Wednesday, 8 July 2015

Tools for the job

What are tools for the job, and what job am I talking about ?

Following jeff's article the-programmers-bill-of-rights.html
I spent some serious time trying out various equipement to help me get things done better and faster.

Some set of gear is a must for every software developer, be it professional work or in house development.
So the job target definition is: Achieving completion of pieces of technologies that work together to perform particular tasks.


But this can be applied to other computer based work such as web design, text editing or other long and tedious cycles that millions of people experience every day.

When I realised the productivity I gained by buying myself better equipment, I started enumerating every pieces which would be ideal to optimise work. 

This can be finding a keyboard making one typing faster - but also improving the overall experience of doing some work which also, in the end, increase productivity as there is a gain of focus and some non-coincidental willingness to work a bit longer...

Headphones

Headphones help gain focus. I find that both in the office environment, which can be noisy, and at home in total silence, having some music or white noise going on helps getting in a mind cocoon and get the work the attention it needs.
Non lyrical music being a particular choice.




Some over the head, or in-ear buds are more or less comfortable. With the convenient Amazon return policy, trying out a model for a few days helps pick the right set as wearing those for a couple of hours can become irritating.



The right Keyboard

It's a very personal thing, I find scissor and mechanical types the best. See my other article here that discuss the different keyboard technologies.









Mouse


Must have. Laptops often have decent touch pads, but don't be fooled, nothing is as accurate and fast as using a real optical mouse.

I favour the gaming mice as they offer the best dpi, with a cable so that I never have to worry about batteries, but I also recently used some wireless min-mice from Logitech that I found pretty good, and more convenient to carry outside.







Chair



Considering the hours we spend sitting in front of the screen, it's important to invest in a comfortable and ergonomic chair.

My choice goes for one of those china-made models that copy really got inspiration from high end designer chairs. 













Sweatshirt



Unless work takes place in a tropical country, a comfy and warm sweatshirt helps working long hours without having to worry about the heater.










Laptop



I'm an adept to desktop computers with proper keyboard and large double screens; but also to having a laptop.

Coffee shops are a good fit these days to do real work. My preference goes with no doubt to the macbook pro 13'. I struggle to find non mac hardware doesn't have to make a compromise.
Battery life, solidity, power, and the ability to run all osx, windows, and linux for testing simply makes it the perfect developer laptop



Internet connection

I see too  many IT enthusiasts, or even professionals who are not interested or knowledgeable when it to home broadband connections.
Get the facts straight: latency, downstream vs upstream bandwidth, network shaping and get yourself a quality hook to the cloud.



Also make sure that WiFi equipment internet provider sent you is reasonable. I find quality routers/WiFi to be a little hard to find for free.


Wednesday, 23 July 2014

Reasons to leave Spotify

It's interesting, thanks god Spotify allows anyone to unsubscribe and leave their service. Tricky though how they asked confirmation highlighting the answer nobody is likely to pick.


Not only this plague dared putting ads when playing my own songs, which don't use any of their bandwidth/licensing, they also trick their paying members to stay in. 

Friday, 2 May 2014

Web Framework benchmark





Some interesting figures. Certainly not the best real world scenario with the repeated "hello world" but that give some insight as to what each can give us in term of performance.

I particular like the comparison between the Java frameworks, netty only adds a slight overhead on top of servlet, which get pretty hammered by the overhead vertx adds onto it. While Spring, on its side, ruins the very efficient pure servlet implementation.

Also happy to see that node.js is not that fast compared to good old JVM based languages.

RPS is request per seconds. It also delusions the so trendy Amazon cloud. Yes it might save some money/time to stand up a service, but what a performance penalty compared to some old school privately own hardware.

And a few others, adding a comparison with some high end server cpu


What's even more interesting regarding the frameworks comparison, is how they scale up if more cpu threads are made available, with the high performance Xeon processor, with 40 HT cores, vs 8 with the i7 cpu, candidate such as Spring, Grails or ruby on rails don't even offer double performance, while netty, using pure servlet or cpoll process requests 4x or 5x faster.


See full article here.

Saturday, 1 March 2014

Node.js vs vert.x ?




I'm falling behind with those hyped event based web servers. node.js has been around for a while now, even though in beta. It's interesting to see that the polyglot, and apparently better performing product is not so well known.



Wednesday, 4 December 2013

Interesting outlook on TDD




TDD's been around for a while, and while some people hate the idea and others can't live without it, that post shows two interesting view points.

Tuesday, 15 October 2013

Sublime text !

Well that's a great name - but also the best lightweight editor out there. If you like CSS/HTML and JavaScript, get yourself a copy of that gem Sublime Text