Thursday, January 16, 2014

The path of a successful business



Starting and maintaining a business in today's world can be both challenging and rewarding. While there is no one way to plan for success, starting out with a few critical concepts can help your business stay adaptive and resilient.

Be efficient: No matter what area your business lies in a lot of time less is more. Going overboard on unnecessary expenditures can only provide added complexity or costs. I've worked in a variety of organization where because of lack of consciousness of the direction of their businesses they have build up a complex set of business rules that are difficult for employees to follow and make little sense.

Be Sustainable: While this may or may not relate directly to your business any amount of reuse is good. We live in a world built around a natural ecosystem and while we may not acknowledge it we are part of that system.

Be Adaptive to Change: My previous two concepts lead into this. Designing your business with change in mind will help you from having to integrate costly solutions. The more efficient and sustainable the easier it will be for you to adapt to the every changing world.

I don't presume to know how every consumer values the process they receive their goods and services. I seek out any opportunity to support businesses who make a conscious decision to be part of society not bend society to their will

Tuesday, December 17, 2013

Keeping pace with the web

New technologies are advancing faster than ever before. Websites are adapting to devices, showing data in real time and present APIs to leverage queries. Its important to consider how much you will embrace this interconnected world and only present information your comfortable sharing with the world.


Responsive Design is a shift in how we build our sites. Starting from a mobile first perspective. By leveraging proportion based grids such as those in the newest build of Twitter Bootstrap, flexible images and CSS3 media queries our site can adapt to any device and still look great doing it. 

 Media Queries allow us to provide different styles to different devices. Where once we provided separate logic for every device, we can now target mobile first an adapt to a richer experience. A simple media query will define a min and a max width in which to execute its styles. 

media="screen and (min-width: 401px) and (max-width: 600px)"

With these we can progressively define how our site will display using various screen sizes. A good way to get starting using responsive design is to get the latest copy of Bootstrap. From a fluid grid system to responsive images to predefined media queries this framework is a excellent way to get up and running using some of the latest practices.

WebSockets have given rise to some impressive libraries and frameworks. Some libraries worth mentioning are socket.io and signalr. Frameworks to keep any eye on are Meteor and Derby. It will be interesting to see how these libraries and frameworks impact the web and our definition of what it means to real time.

RESTful web servies give us a simple way to reach clients from internet browsers to mobile devices. Leveraging RESTful web services you can provide reusable APIs that are easily consumed.

Its never been easier to find the right tool for the job.

Friday, February 3, 2012

Getting up and running with Node.js on windows


Node.js has come along way since I last visited it. There is now a compiled windows msi installer. Once installed not only can you run your node.js files through a command prompt you can use npm to install node modules.

Getting start with node.js is really pretty simple. You’ll need to go to http://nodejs.org/ and install the msi. Once Install depending on where you chose to install it you should have a folder with node.exe.

Hello World!

Lets start out with a simple hello world example. Open your favorite JavaScript editor and create a file called server.js (I prefer Webstorm which has integration with Node.js)

var http = require("http");
function onRequest(request, response) {
    console.log("Request received.");
    response.writeHead(200, {"Content-Type": "text/plain"});
    response.write("Hello World");
    response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started.");

So in order to run this file we simply open up a command prompt navigate to the path of  the node.exe and run the server.js file

cd "Program Files(x86)"\nodejs  
node.exe C:\Users\jesse\Projecs\NodeJS 
 
Server has started.
Now we can navigate to localhost:8888 and see our server up and running.



Node package manager


The npm is a package manager for node. there are a whole slew of libraries you can you install. You can search for packages at http://search.npmjs.org/. In order to use npm with our open command prompt we type:


npm install <package name>

image

Node.js learning resources

Monday, October 24, 2011

WebStorm: the bestest Javascript editor ever

I've been meaning to get up a decent review of my new favorite editor WebStorm,
I've looked around for a long time for a decent editor for the web. I've tried out Aptana, Netbeans, Visual Studio, and WebStorm. With the exception of WebStorm all left me feeling like something was missing.


Intellisense
WebStorm has Intellisense for all of the popular libraries including Jquery, Jquery UI, Ext JS, Prototype, and Dojo. Additionally with any of these libraries you can hit Shift + F1 and bring up the libraries documentation on the web.













Version Control
Integration with Git, github, CVS, Mercurial, and Subversion. I found the Integration with github a cool feature. Allowing you to work with projects straight from github.















Templates
Live Templates are just like you'd expect if your used to using CodeRush, JustCode, or ReSharper you'll feel right at home. Where $Variablehere$ represents a variable you can define a default value and $END$ is where your cursor will end up.

























Refactoring
Just about all the features so far are pretty standard in any IDE. Refactoring is where WebStorm really shines. Have a old web project with a bunch of inline css that is driving you nuts? Refactor either to a in-page style tag or to a external existing or new css file. The same goes for JavaScript.












Final Thoughts
There is about another 2 pages of features I could go on about. I've found WebStorm to be a great balance between abundance of features and simplicity. With many ways to customize your IDE from Shortcuts, Templates, Live Templates, Themes, and Plugins; I think just about any developer could tailor WebStorm to fit their needs. If you would like to check out WebStorm  you can download the lastest Early Access Program Version here: WebStorm EAP

Wednesday, October 19, 2011

CruiseControl.Net Add New Project Utiltity

I've been to several talks on Team Foundation Server. While TFS is a great piece of software there can be circumstances where It is just plain overkill. At my place of work with a total of 6 Developers, maintaining a TFS Server would be more about maintaining the server than getting any actual work done. What then can small shops implement for their Continuous Integration?

In comes CruiseControl.Net . While the initial configuration can a bit daunting. Once you have your server up and going its pretty problem free. Now adding new project can be a lengthy process. After a while of manually filling out a new xml configuration files for each new project, I decided to create a utility to do this for me. Once setup with the proper paths this utility will add the required entries and files that will automatically setup your new project for CruiseControl.Net. You will still need to copy over the project file to the correct project directory, but all in all this tool will save you a quite a bit of time. CCCreator