Today's Question:  What does your personal desk look like?        GIVE A SHOUT

 ALL


  Standardizing Python WSGI deployment

Over the past year I have been testing all of the new python platform as a service companies that have popped up, and I have posted my notes on my blog so that everyone can learn from my experiences. ep.io, apphosted.com, gondor.io, dotcloud.com, DjangoZoom.com, Heroku, Django hosting roundup,All and all, the platforms were very similar, they allowed you to easily host your python/django project without having to worry about managing a server or other typical system administration duties. Some of the services were more advanced and had more features then others, but since it was s...

2,812 0       JAVA PYTHON STANDARD WAR


  Pay Your Programmers $200/hour

If you are hiring programmers, you should pay them $200/hr. This breaks through otherwise impenetrable psychological barriers, helps solve the agency problem, and ensures you are only hiring programmers when you really need them.Expectations$200/hr is an open declaration of your expectations. It states that you are expecting to hire both a professional and an expert in the field.As a programmer, I treat contracts that pay me $200/hr differently from jobs/contracts that pay me $65/hr equivalent salary in two key ways. First, I treat issues and requests with far greater urgency. I’ve been...

3,359 0       PROGRAMMER SALARY VALUE RESPONSIBILITY URGENCY


  What the Heck are Algebraic Data Types? ( for Programmers )

This post is meant to be a gentle introduction to Algebraic Data Types. Some of you may be asking why you should learn Algebraic Data Types and how will they change your world?  I am not going to answer that, but suffice it to say that Algebraic Data Types are the underpinning of the type systems to the ML derived languages, Haskell and OCaml included, and their construction and properties allow for the power (and inference) that accompanies these type systems.  They are cropping up in other languages, like Scala, F#, and Clojure.  Well, here are my 2 cents.I wrote this blog pos...

3,213 0       PROGRAMMER ALGEBRAIC DATA TYPE SET OPERATOR


  Clojure & Java Interop

About a year ago I got a phone call asking if I wanted to join another team at DRW. The team supports a (primarily) Java application, but the performance requirements would also allow it to be written in a higher level language. I'd been writing Clojure (basically) full-time at that point - so my response was simple: I'd love to join, but I'm going to want to do future development using Clojure.A year later we still have plenty of Java, but the vast majority of the new code I add is Clojure. One of the big reasons I'm able to use Clojure so freely is the seamless interop with Java.Execute Cloj...

3,697 0       JAVA FUNCTION CALL CLOJURE INTEROPRABILITY COMMIT


  Backend-as-a-service?

As the list of *-as-a-service’s continues to grow, I thought I’d throw one into the mix. What about the idea of a backend-as-a-service (BaaS)?The recent surge of client side Javascript frameworks along with the attractiveness of simple RESTful APIs has created an environment where server-side interaction can be reduced to simply database interaction (including validation and some computation). But why stop there?What if the server-side of the equation was simply a RESTful, schema-less API? It could utilize MongoDB or some other document-oriented storage to avoid a strict schema d...

3,217 0       WEB DESIGN BACKEND SERVICE BAAS CLIENT JAVASCRIPT


  Supercolliding a PHP array

Did you know that inserting 2^16 = 65536 specially crafted values into a normal PHP array can take 30 seconds? Normally this would take only 0.01 seconds.This is the code to reproduce it:<?php echo '<pre>';$size = pow(2, 16); // 16 is just an example, could also be 15 or 17$startTime = microtime(true);$array = array();for ($key = 0, $maxKey = ($size - 1) * $size; $key <= $maxKey; $key += $size) { $array[$key] = 0;}$endTime = microtime(true);echo 'Inserting ', $size, ' evil elements took ', $endTime - $startTime, ' seconds', "\n";$startTime = microtime(true);$array = arra...

2,564 0       PHP ARRAY HASHTABLE SLOW COLLIDING


  JavaScript Is Not A Language

Recently people presented arguments for and against using CoffeeScript. I felt the argument against was pointless and obviously wrong, but I couldn't figure out why, and I thought the counterargument for was kind of toothless and irrelevant. I've figured out the real issue.The real argument for CoffeeScript is that JavaScript is not really a language.Years ago I read something which explained, in my opinion, why Lisp has never achieved the mainstream adoption its passionate advocates believe it deserves. Lisp projects experience a degree of balkanization because everything is left wide open; y...

4,486 0       JAVASCRIPT MODEL NOT A LANGUAGE COFFEESCRIPT


  10 Things Beginner Developers Should Know

If you are a novice developer, it might be confusing about where you should start, because the field is broad and provides many options for you. There are so many questions you might ask yourself, such as “What programming language should I learn?” or “Should I also know front-end, or only back-end?” And I am sure there are much more than that. Well, in order for you to be able to start with an advantage against the others, I’ve decided to help you start your career as a developer with the following list of tips.1. Decide upon the skills you wantWhen starting out...

3,700 0       ADVICE SOFTWARE DEVELOPER BEGINNER