Last week we've been proud participants to one of the biggest tech events South Florida is hosting year around: eMerge Americas. Hosted in a prime location at the Miami Beach Convention Center, with more than 10,000 participants, with all the major tech companies boasting big booths, 100+ start-ups showcasing their new ventures, a Career Section and a number of celebrity speakers the Conference was a success!
Now that we were able to catch our breadth following up with contacts after the event, here are some thoughts we came home with from this event.
1. South Florida's tech market is definitely growing in initiatives
There were 129 start-ups participating in the start-ups contest. That's more than I expected! It is correct, some of them were from out of town but Miami was very well represented as well. It is a great thing to see young entrepreneurs putting together ideas and business plans and pitching. And it is a great thing to see crowds flocking and National TV Networks broadcasting the events.
2. The South FL tech investment community still looks pretty shy
While the initiatives are great and Miamians show very entrepreneurial, the investors community remains shy. Prizes of the $25k, $50k and even $100k of sorts will not drive talent to Miami fast enough to make it compete with major tech hubs like San Francisco, New York or Boston. Make it a million $ for a prize and then we are talking!
I spoke with a lot of very talented developers that I personally know: they would easily relocate to Miami should the opportunities arise! They are attracted by the weather, the relatively low cost of living and the good taxes environment but they look for the same things: great projects and great salaries.
Prior to this show this piece of information came in that for every single dollar invested in tech in Miami there are a thousand dollars invested in in tech in San Francisco ($14 mil. in 2014 as opposed to $14 bil. in 2014). That's a huge difference!
So I challenge the South FL investor's community to step up to the plate and significantly raise the bar in terms of invested amounts in South FL projects.
3. The tech talent looking for full time jobs remains scattered
While the entrepreneurs were great, the job seekers were shy. We participated in the Career Fair section. In two full days we gathered only about 25 resumes out of which only 2 people had the actual education and skill sets to be interviewed for a full time position.
This comes back to two avenues: one is the School's System in Florida- which can definitely be improved. And another one is the amount of capital investments that is poured in the local economy. The better schools and the more investments we will have, the more successful people we will be able to drive and the more innovation will happen.
4. We are in Miami- so we have to show off!
At that times it was funny to see how some people turned a tech event into a fashion show! Attendants showing up late and without an apparent interest in technology were showing off expensive clothing and apparel and looked like they were in a big hurry just to pass by.
5. We still need a major innovative driving force to take this City to the next level
I appreciated the speeches and keynote speakers: they are a necessity at these kinds of events. I love Manny Medina and I even like Pitbull. I am even okay with a Mayor talking here and there- even if I am not sure what a Mayor actually does for the tech community in a City like Miami.
But I wish more tech super stars were invited to talk. How about a Bill Gates or a Mark Cuban? How about an Elon Musk? They would have been inspirational!
So Mr. Manny let's try to bring over better quality speakers next time!
Along the same lines one thing Miami (and South FL more general) is still lacking is a major recent innovation story like the ones that people used to write when the first PC was invented in the IBM"s facility in Boca or when Citrix was founded in Ft. Lauderdale. I agree that things like growing and selling Teremark to Verizon for a lot of money was a great business success in South FL but I am looking for the next Steve Jobs! And the next Apple Computers!
Make it a great day!
Adrian Corbuleanu
http://wittywebnow.com

Witty Web Solutions (http://wittywebnow.com) is a Miami Beach based software development company. Our code is lean, small foot print, easy to read, reliable and fast. We have excellent tech support. We save development costs by implementing agile project management techniques.
Monday, May 11, 2015
Monday, April 13, 2015
The power of integration
Integrating pre-written and tested components is a common practice in software development. When designing a large scale solution, in the interest of time and budget it is many times a very good idea to integrate pre-existing code rather than writing it from scratch.
Weather they are open source or white labeled / licensed these pre-existing components will help both the client and the developer.
Here are a few examples of commonly used pre-existing components:
1. Shopping carts
There is a large variety of shopping carts available on the market. They range from carts for small shops to enterprise level carts that can handle large inventories and large numbers of concurrent transactions. Shopping carts are generally easy to configure, customize and straight forward to hookup to most of the industry's standard payment gateways.
Here is an example of a popular Ruby gem that offers a shopping cart
https://github.com/spree/spree
Other popular solutions include Volusion, Big Commerce, Shopify, Web.com and Yahoo for Small Businesses.
2. Shipping and handling modules
While most of the shopping carts have a shipping component, there are specialized shipping and handling APIs that do a very good job. Those are good to integrate especially when you have to deal with international shipments and non-standard addresses formatting. They are also great if you do not have a specialized shipping and handling company and you want to be able to address complex postage and shipping requirements with in-house personnel.
An API that does a very good job with this is https://www.easypost.com/
Other popular shipping and handling apps are the ones offered by the popular carriers like FedEx, UPS and DHL.
A Drupal based module is this https://www.drupal.org/project/commerce_shipping
3. Chat clients
Chat clients are very popular nowadays. You will definitely get requirements to implement a chat client (and possibly a chat server as well) if you work in social media projects or projects that involve online support (including IT support).
Back in the hey days of dotcom you had to do all kinds of magic, open up and close all kinds of sockets and write your own chat applications. But nowadays you have them at your fingertips.
Well known chat clients are Userlike, Pidgin and Trillian.
4. Games
To engage their users base, nowadays a lot of the interactive online platforms and social media sites require the availability of online games or gaming platforms. While your shop may not be a gaming development studio, you still do have access to a variety of online gaming platforms that can be easily integrated in your solution.
Some of the most popular gaming platforms are Arkadium, GamezBoost and Gamer Launch.
From our experience integrating games in social media platforms does require some funds (as most of the gamers charge at the level of $5k/month for the service) but it is by far much less expensive and faster than developing your own custom games as a company. The gaming platforms are titles rich as well, some of them providing hundreds or even thousands of different games. Latest platforms are also mobile ready.
5. Calendars
A lot of educational, events based or marketing driven websites require online calendars implementations. Usually the staff has to be able to share their calendar, add/edit/delete events, send notifications and updates and integrate with other standard calendars such as Google's and Outlook. Since a couple of years ago more requirement are for all the calendars to be mobile ready as well.
You can embed Google's calendar in WordPress https://en.support.wordpress.com/google-calendar/ or you can use one of the popular open source calendar servers such as http://calendarserver.org/
6. Standard servers (network applications)
When working in network applications such as load balancers, L4_L7 traffic management devices or other similar software/hardware solutions you will have a need to integrate some standard network services such as DNS (http://maradns.samiam.org/), DHCP (http://dhcpserver.sourceforge.net/) or NAT (https://github.com/lontivero/Open.Nat).
In the old days we used to have to write our own load balancing code but the latest versions of linux kernel made it much easier with things like LVS.
7. Language and currency converters
When you work on localized websites you will more likely run into the need of implementing language and currency converters. There is a wide variety of plug-ins for all the major platforms including WP and Joomla plug-ins. They cover automatic site content translation in many languages and currency converters for all the major currencies.
Here are some of the most popular translation tools: https://wordpress.org/plugins/wordpress-language/, WPML.org, qTranslate, Stella. For currency convertors you have Google's, Oanda and Yahoo Finance.
We used language and currency converters in real estate sites that target international markets in addition to the US market. In Miami a Spanish plug-in is always a great idea to have as well.
8. Standard feature sets for social media
A lot of the current niche or business driven social media platforms use a standard set of features (on top of many custom ones that depend on the solution). They generally include profiles and bios definitions, photo galleries with captions, the ability to follow users, like and dislike content, post comments, pictures and videos etc.
There are many open source pre-written modules that support social media platforms. One of them is The Social Stream https://rubygems.org/gems/social_stream/versions/2.2.2. Another one is Networkx in Python. Jomsocial as well is a very popular framework to write social media functionality on top of Joomla http://www.jomsocial.com/.
For straight-forward, standard looking Content Managed websites with a responsive web design requirement people can also use standard professionally looking pre-designed templates. These templates are very inexpensive, very easy to customize and have a big advantage: they do not necessitate involving and paying a professional graphic designer.
Here is a link to a site we occasionally use to pick up templates from:
http://www.templatemonster.com/wordpress-themes/53484.html
Here are also a few considerations when doing research to choose a pre-defined component:
1. Security
No matter what plug-in you implement consider security and understand possible vulnerabilities. If the module is open source it is easy to review the code for potential issues. If it is not do your online and offline research on the company / group that provides the module. Even the big shops have vulnerabilities and some components are more secure than others. Do your due diligence.
2. Scalability
When you work on larger scale systems consider the effort invested in growing up a pre-written module in comparison to a custom one. If the effort to customize the module is larger, then stick with writing custom code.
3. Clean code & flexibility
Always review the modules code thoroughly to see how flexible and easy it is to be customized to your clients needs. I.e. a chat client is pretty standard but a custom DNS server may involve more customization and configuration. You want to work with clean modules, things that are standard written and using best practices.
4. Support and documentation
Always test the tech support of the company that provides the module and/or check the online forums / discussion boards of open source groups. Most of these modules are actively maintained by large groups of developers. Support and documentation tend to vary in quantity and quality.
As we do a lot of Content Management, Social Media and e-commerce software development we successfully use a lot of these in our daily endeavors and our clients are happy every time when we can save them time and money while maintaining the quality, flexibility and reliability of the delivered solution.
From a business stand-point we have seen dollar$ savings for the client, depending on the size of the project and number of components, from 15% all the way up to 40%(!) calculated for an average complexity 3-6 month project.
Make it a great day!
Adrian Corbuleanu
Miami Beach, FL
http://wittywebnow.com
Weather they are open source or white labeled / licensed these pre-existing components will help both the client and the developer.
Here are a few examples of commonly used pre-existing components:
1. Shopping carts
There is a large variety of shopping carts available on the market. They range from carts for small shops to enterprise level carts that can handle large inventories and large numbers of concurrent transactions. Shopping carts are generally easy to configure, customize and straight forward to hookup to most of the industry's standard payment gateways.
Here is an example of a popular Ruby gem that offers a shopping cart
https://github.com/spree/spree
Other popular solutions include Volusion, Big Commerce, Shopify, Web.com and Yahoo for Small Businesses.
2. Shipping and handling modules
While most of the shopping carts have a shipping component, there are specialized shipping and handling APIs that do a very good job. Those are good to integrate especially when you have to deal with international shipments and non-standard addresses formatting. They are also great if you do not have a specialized shipping and handling company and you want to be able to address complex postage and shipping requirements with in-house personnel.
An API that does a very good job with this is https://www.easypost.com/
Other popular shipping and handling apps are the ones offered by the popular carriers like FedEx, UPS and DHL.
A Drupal based module is this https://www.drupal.org/project/commerce_shipping
3. Chat clients
Chat clients are very popular nowadays. You will definitely get requirements to implement a chat client (and possibly a chat server as well) if you work in social media projects or projects that involve online support (including IT support).
Back in the hey days of dotcom you had to do all kinds of magic, open up and close all kinds of sockets and write your own chat applications. But nowadays you have them at your fingertips.
Well known chat clients are Userlike, Pidgin and Trillian.
4. Games
To engage their users base, nowadays a lot of the interactive online platforms and social media sites require the availability of online games or gaming platforms. While your shop may not be a gaming development studio, you still do have access to a variety of online gaming platforms that can be easily integrated in your solution.
Some of the most popular gaming platforms are Arkadium, GamezBoost and Gamer Launch.
From our experience integrating games in social media platforms does require some funds (as most of the gamers charge at the level of $5k/month for the service) but it is by far much less expensive and faster than developing your own custom games as a company. The gaming platforms are titles rich as well, some of them providing hundreds or even thousands of different games. Latest platforms are also mobile ready.
5. Calendars
A lot of educational, events based or marketing driven websites require online calendars implementations. Usually the staff has to be able to share their calendar, add/edit/delete events, send notifications and updates and integrate with other standard calendars such as Google's and Outlook. Since a couple of years ago more requirement are for all the calendars to be mobile ready as well.
You can embed Google's calendar in WordPress https://en.support.wordpress.com/google-calendar/ or you can use one of the popular open source calendar servers such as http://calendarserver.org/
6. Standard servers (network applications)
When working in network applications such as load balancers, L4_L7 traffic management devices or other similar software/hardware solutions you will have a need to integrate some standard network services such as DNS (http://maradns.samiam.org/), DHCP (http://dhcpserver.sourceforge.net/) or NAT (https://github.com/lontivero/Open.Nat).
In the old days we used to have to write our own load balancing code but the latest versions of linux kernel made it much easier with things like LVS.
7. Language and currency converters
When you work on localized websites you will more likely run into the need of implementing language and currency converters. There is a wide variety of plug-ins for all the major platforms including WP and Joomla plug-ins. They cover automatic site content translation in many languages and currency converters for all the major currencies.
Here are some of the most popular translation tools: https://wordpress.org/plugins/wordpress-language/, WPML.org, qTranslate, Stella. For currency convertors you have Google's, Oanda and Yahoo Finance.
We used language and currency converters in real estate sites that target international markets in addition to the US market. In Miami a Spanish plug-in is always a great idea to have as well.
8. Standard feature sets for social media
A lot of the current niche or business driven social media platforms use a standard set of features (on top of many custom ones that depend on the solution). They generally include profiles and bios definitions, photo galleries with captions, the ability to follow users, like and dislike content, post comments, pictures and videos etc.
There are many open source pre-written modules that support social media platforms. One of them is The Social Stream https://rubygems.org/gems/social_stream/versions/2.2.2. Another one is Networkx in Python. Jomsocial as well is a very popular framework to write social media functionality on top of Joomla http://www.jomsocial.com/.
For straight-forward, standard looking Content Managed websites with a responsive web design requirement people can also use standard professionally looking pre-designed templates. These templates are very inexpensive, very easy to customize and have a big advantage: they do not necessitate involving and paying a professional graphic designer.
Here is a link to a site we occasionally use to pick up templates from:
http://www.templatemonster.com/wordpress-themes/53484.html
Here are also a few considerations when doing research to choose a pre-defined component:
1. Security
No matter what plug-in you implement consider security and understand possible vulnerabilities. If the module is open source it is easy to review the code for potential issues. If it is not do your online and offline research on the company / group that provides the module. Even the big shops have vulnerabilities and some components are more secure than others. Do your due diligence.
2. Scalability
When you work on larger scale systems consider the effort invested in growing up a pre-written module in comparison to a custom one. If the effort to customize the module is larger, then stick with writing custom code.
3. Clean code & flexibility
Always review the modules code thoroughly to see how flexible and easy it is to be customized to your clients needs. I.e. a chat client is pretty standard but a custom DNS server may involve more customization and configuration. You want to work with clean modules, things that are standard written and using best practices.
4. Support and documentation
Always test the tech support of the company that provides the module and/or check the online forums / discussion boards of open source groups. Most of these modules are actively maintained by large groups of developers. Support and documentation tend to vary in quantity and quality.
As we do a lot of Content Management, Social Media and e-commerce software development we successfully use a lot of these in our daily endeavors and our clients are happy every time when we can save them time and money while maintaining the quality, flexibility and reliability of the delivered solution.
From a business stand-point we have seen dollar$ savings for the client, depending on the size of the project and number of components, from 15% all the way up to 40%(!) calculated for an average complexity 3-6 month project.
Make it a great day!
Adrian Corbuleanu
Miami Beach, FL
http://wittywebnow.com
Friday, March 13, 2015
3 business cases where software development gives you traction
As technologists we always whiteness-ed discussions like these:
"Have you considered Scala? It's Object Oriented and it overcomes a lot of Java's shortcomings!"
"Have you heard of the new xyz Google plug-in?"
"We don't like Windoze, we are open source developers!"
All these are fine discussions between developers but the business does not care. They want results. They want product delivered fast and with great quality. They want paying customers. They want great customer support and outstanding responsiveness to issues. And, more important, they want to understand why and how your solution will help their business.
So how we as developers tailor our day-to-day approaches to fuel business growth? In this blog I will discuss three real world scenarios.
#1 Affiliate marketing and payment system
This company is a start-up running an outstanding Content Management initiative on a full stack platform with a full blast database, a sophisticated users management system, a responsive website and two mobile applications.
They have an opportunity for a participation in an affiliate marketing program ran by a national company. The national company is restrictive/controlling and they are imposing cumbersome leads generation and payments requirements. The leads will basically be generated from their site, their site has to process the payment for subscriptions and well then they will give us access to the lead so we can register the user with our website. Subsequent users (subordinated to a user they registered) registered directly with our website will have to re-directed back to their site for payment processing and a commission will be cut.
While the opportunity is good, coding for such a functionality is not straight forward and security mechanisms will raise the price of the ticket item for software development services.
Instead of pushing for a sale in what it could mean more of hassle for both our customer and us, we recommended working with other companies who do it right: will just send us the lead and let us process the payment and cut their commission from there.
This is a good example of a situation where, no matter of the technology, implementing a solution would not make business sense.
#2 Plug-in for Indiegogo campaign
Another start-up is running a crowd funding campaign. They designed an attractive Indiegogo package for a niche / affinity based social media solution. They need to have people contributing through Indiegogo and getting their perks for their contributions- which are basically different levels of subscriptions to the service and marketing materials from the company such as tshirts and hats. They need us the programmers get their mail addresses for them to be able to ship the product.
Everything is fine. Just that Indiegogo does not have an API for 3rd parties to work with. On top of that business requirements are that the company's store has to allow for artifacts purchases directly from the store as well.
This is another example where the technology that you use to implement the business requirements matters less. What matters more is the approach to plug-in Indiegogo's code into your site's code. So it's a work flow issue more than anything. You basically have to simulate an automatic login into Indiegogo, grab the transactions of the day & the tokens generated with them and pass them to the company's web store so people who contributed to the campaign get access to the system and get their tshirts shipped out.
#3 Mobile ready real estate document generation system
A local well established luxury real estate agency is looking to implement a custom document generation and management system to assist different parties involved in a real estate closing. These would be standard docs involved in a real estate transaction like sales contracts, disclosures, property appraisals, legal docs etc.
There are of course similar solutions on the market but they all lack different features that this realty would like to see: i.e. they do not have mobile support, they do not take social media logins, they lack certain stats and reporting capabilities.
While we were analyzing hard to propose a solution and we were all spinning our heads off talking databases, responsive design and mobile apps the client had a very simple and candid question: "What can we do better than these guys?" (they were talking about their competition that was already using a similar product).
The answer in this case was in our ability to support formal real estate docs generation from all kinds of devices including mobile phones, tablets, laptops and desktops. The customer was very happy with that answer and we immediately understood that getting too much into the technical jargon would have hurt the deal rather then helping it.
This is a good example where you as a developer know how to talk your client's language.
Make it a great day!
Adrian
Miami Beach, FL
http://wittywebnow.com
"Have you considered Scala? It's Object Oriented and it overcomes a lot of Java's shortcomings!"
"Have you heard of the new xyz Google plug-in?"
"We don't like Windoze, we are open source developers!"
All these are fine discussions between developers but the business does not care. They want results. They want product delivered fast and with great quality. They want paying customers. They want great customer support and outstanding responsiveness to issues. And, more important, they want to understand why and how your solution will help their business.
So how we as developers tailor our day-to-day approaches to fuel business growth? In this blog I will discuss three real world scenarios.
#1 Affiliate marketing and payment system
This company is a start-up running an outstanding Content Management initiative on a full stack platform with a full blast database, a sophisticated users management system, a responsive website and two mobile applications.
They have an opportunity for a participation in an affiliate marketing program ran by a national company. The national company is restrictive/controlling and they are imposing cumbersome leads generation and payments requirements. The leads will basically be generated from their site, their site has to process the payment for subscriptions and well then they will give us access to the lead so we can register the user with our website. Subsequent users (subordinated to a user they registered) registered directly with our website will have to re-directed back to their site for payment processing and a commission will be cut.
While the opportunity is good, coding for such a functionality is not straight forward and security mechanisms will raise the price of the ticket item for software development services.
Instead of pushing for a sale in what it could mean more of hassle for both our customer and us, we recommended working with other companies who do it right: will just send us the lead and let us process the payment and cut their commission from there.
This is a good example of a situation where, no matter of the technology, implementing a solution would not make business sense.
#2 Plug-in for Indiegogo campaign
Another start-up is running a crowd funding campaign. They designed an attractive Indiegogo package for a niche / affinity based social media solution. They need to have people contributing through Indiegogo and getting their perks for their contributions- which are basically different levels of subscriptions to the service and marketing materials from the company such as tshirts and hats. They need us the programmers get their mail addresses for them to be able to ship the product.
Everything is fine. Just that Indiegogo does not have an API for 3rd parties to work with. On top of that business requirements are that the company's store has to allow for artifacts purchases directly from the store as well.
This is another example where the technology that you use to implement the business requirements matters less. What matters more is the approach to plug-in Indiegogo's code into your site's code. So it's a work flow issue more than anything. You basically have to simulate an automatic login into Indiegogo, grab the transactions of the day & the tokens generated with them and pass them to the company's web store so people who contributed to the campaign get access to the system and get their tshirts shipped out.
#3 Mobile ready real estate document generation system
A local well established luxury real estate agency is looking to implement a custom document generation and management system to assist different parties involved in a real estate closing. These would be standard docs involved in a real estate transaction like sales contracts, disclosures, property appraisals, legal docs etc.
There are of course similar solutions on the market but they all lack different features that this realty would like to see: i.e. they do not have mobile support, they do not take social media logins, they lack certain stats and reporting capabilities.
While we were analyzing hard to propose a solution and we were all spinning our heads off talking databases, responsive design and mobile apps the client had a very simple and candid question: "What can we do better than these guys?" (they were talking about their competition that was already using a similar product).
The answer in this case was in our ability to support formal real estate docs generation from all kinds of devices including mobile phones, tablets, laptops and desktops. The customer was very happy with that answer and we immediately understood that getting too much into the technical jargon would have hurt the deal rather then helping it.
This is a good example where you as a developer know how to talk your client's language.
Make it a great day!
Adrian
Miami Beach, FL
http://wittywebnow.com
Subscribe to:
Posts (Atom)