Welcome

"What is the use of living, if it be not to strive for noble causes and make this muddled world a better place for those who will live in it after we have gone." -- Winston Churchill

Friday, October 12, 2012

Great free development tools for small businesses

 Small Business development tools

Working for a small company can have many challenges - one of which is affording tools to do jobs that you don't always make money on or for.  I find that oftentimes, small businesses resort to using Microsoft Word or PowerPoint to develop complex diagrams instead of applications like Visio.  I have found it very frustrating to develop any type of complex diagram using either of these applications as the ability to setup diagrams such as flowcharts or state machines is just not there.  (With Visio, these types of diagrams are a snap!)

Also, at small companies, people are oftentimes used to developing documentation within a vacuum.  This can mean that they use something that may have "fallen off the bus" or that they have purchased for their own home use.  The challenge her is that other developers may not have the same set of tools and therefore end up re-creating the images from scratch in their own chosen applications.  This wastes time and money and also decreases employee morale as we must reinvent the wheel again.

However, I have found two free applications that have helped me out greatly.  They are freely available on the web, so any of my fellow developers can also download and install them to pickup where I left off.

UML Diagrams

UMLet is a free, open-source UML diagram tool.  You can rapidly develop UML diagrams and modify colors, text, and features of the shapes.  The installation is flawless on a Windows 7, 64b processor and I have had no issues using it.  This is not a substitute for RationalRose or other complex UML tools, but it is free and very easy to use.  Drag and drop shapes onto the drawing area.  You can lasso shapes to move groups, zoom in and out, and move around the diagram. 

The UMLet drawings can be exported to image formats such as BMP, JPG, and PNG.  There are other export formats as well. 

Wireframe Generators

My current assignment is developing a Java-based GUI.  It's been awhile since I've done Java development but I do remember that GUIs are painful.  Not from a coding perspective but from an opinion perspective.  (You know what they say about opinions, right?)  I've found that presenting users with wireframes of the screens is a great way to gain buy-in early on in the project.  This reduces the churn of going through iteration after iteration of moving buttons around and changing fonts and colors.  Everyone is on the same page from the beginning.  Now, you can do wireframes with a pencil and paper however for a better hands-on experience, look to these two products to allow your customers to interact with the mock-ups and move through the GUI.

Pencil

Pencil is a Firefox plug in and is free.  Pencil provides you with several basic shape templates to give your wireframes different looks to them.  Pencil has a simple drag-and-drop interface allowing you to drag shapes and components onto the drawing surface.  You can customize components such as drop-down menus and tables to give the user the experience of looking at their GUI.

Pencil also has the ability to link pages.  This means that buttons, when "pressed", will take the user to a different page in the wireframe.  This gives the illusion of actually interacting with the GUI.  Linking pages is a fantastic way to start usability discussions at the beginning of the process, not at the end.

Balsamiq

Balsamiq is another wonderful wireframe generation tool.  Balsamiq offers several pricing options and includes a web-based version.  Balsamiq provides more shapes and templates than Pencil allowing you to generate a richer-looking GUI for your customer.  Balsamiq also provides the ability to link pages.

With Balsamiq and Pencil, you get what you pay for.  If you have a bit of a budget to spend on a wireframe tool, I would recommend Balsamiq.  There are more components provided to you which make GUIs much more realistic.  However, for the price of free, you can't beat Pencil.

Conclusion

Do you have other favorite tools that you use at your small business?  Either for development or for business purposes such as project management/tracking or tracking hours?  I'd love to hear what you use.


4 comments:

  1. Although not permanently free, a great resource is the Bizspark program from Microsoft. To be eligible you have to be a small business startup. What you get is full access to virtually every tool, OS and application that MS has to offer for free. Although I consider myself an unofficial Eclipse evangelist, Visual Studio 2012 is a superior application for developing windows applications and the UML/automatic code generation tools are fantastic. That said, I've used BoUML and ArgoUML in the past and although not very user friendly, they are powerful tools.

    ReplyDelete
    Replies
    1. Thanks for the addition, E Geoff. I will have to look into the Bizspark program as it sounds like it would benefit several small companies I know.

      Delete
  2. Hey Amy,

    For those intrested in schematic capture and PCB layout, "KiCad" has been pretty decent. Its open source (I believe) available for PC and Linux. There's still a few things I wish it did better, but it's not bad for free schematic capture. A few folks have free part libraries out three as well.

    - Ian

    ReplyDelete
    Replies
    1. KiCad is open-source (avail here: http://www.kicad-pcb.org/display/KICAD/KiCad+EDA+Software+Suite)

      I cannot believe that a schematic and PCB tool is free. Tools like these are usually locked down and companies must pay license fees every year for the privilege of using them.

      Excellent suggestion, Ian!

      Delete