Sux less – every step is moving me up

software, technology, working in a team and maybe music.

Code Swarm

with one comment

Code swarm is a nice project that visualizes a code commits history. It was developed using the processing language which is built on top of Java as a language+framework to rapidly generate visualizations for the web. I’m not sure this language will long live in light of the rapid developments of Canvas in modern (!= IE) browsers. Processing was recently ported to JavaScript by john Resig the creator of the excellent jQuery JavaScript framework, and other interesting tools are developed using JavaScript+Canvas (I wonder what would be the new buzzword acronym for that) like Algorithm Ink (I even drew something with it).
Since code swarm is open sourced I’ve used it to visualize the CMS application I’m working on at my company (SourceMedia). The video depicts over one year of commits history to subversion. Different colors represent different file types: red – source code, blue – jars, orange – images and green – configuration files.

I can’t say I’ve learned much from it, yet it’s an interesting first step that tries to convey the work done during a development of real world apps.


Written by talgiat

July 10, 2008 at 1:13 am

I don’t know

leave a comment »

I’ve been programming for the past fifteen years. I still feel like I don’t know shit. Maybe that’s why I love it, it’s feels endless, every time I learn something it’s like opening a door to a new room that has another five doors in it. I guess it’s true about a lot of things, and that some people can find this infinite quest discouraging, but I feel it’s the fuel that keeps me motivated every morning going to work.
I feel lot a lot of topics I’ve studied in undergrad school (some 10+ years ago) were really important but I don’t remember them anymore. Hell, Scheme was the first language we studied and the only thing I can remember is lots of parenthesis. Yet when I started programming in JavaScript I found out uses lambda and closures and all these funky concepts I remembered I have forgotten. Now I’m reading about compilers and the JVM and Abstract syntax tree and AWK and SED which I sense are partially buried in some unreachable corners of my brain. I guess I feel today, with all the libraries and tools, fancy IDEs, new languages, new frameworks, etc, I (and maybe you too) spend most of my time learning how to configure stuff, but spending much less time thinking about the foundations, how things are built, how to use them to create your own little tools, how to connect these concepts to your work. There is this annoying argument that everyone says: “don’t reinvent the wheel”, don’t spend time writing tools, spend time focusing on your business model and application. Yet I believe the truth of the matter is you spend very little time focusing on your business model and most of the time searching for pre-made, figured out tools you “just” have to configure. I feel like these tools are microwave dinners, but I really love cooking not reading the package instructions and preparing dinner in 5 minutes. Maybe it’s a bad analogy, but I can’t find a better one.

Hell, I’m not saying write your own language like Fog Creek people did, I’m just saying let’s all spend a little more time programming, understanding the fundamentals and try connecting them to the tools we use, and problems we have to solve, and less time writing posts in forums of some popular framework we “must” use.

Written by talgiat

June 26, 2008 at 1:46 am

Posted in Uncategorized

Wanna be starting something

leave a comment »

I hate writing, I suck at writing, I will procrastinate writing stuff as much as I can (and even way beyond that). I’m even writing this post instead of writing some paper for school (something about conflict management if you really want to know).

So why start a blog probably nobody will read and add to the endless noise ?

Well, you might call it mid-year resolution, but I decided to confront my writing daemons as Jeff Atwood suggests and maybe in the process suck less at writing, and today I’ve got additional support after reading Steve Yegge’s (my new favorite blogger) post about why you should start a blog.

Working in the software industry for quite some time (and still loving it), I find most programming blogs, books, forums, references and most form of documentation totally lacking one major aspect: explaining why make certain choices, talking about trade offs, and giving good end to end examples that don’t revolve around: cars, music instruments or pets. So I thought it’ll be a good place for a mind dump about programming decisions I face every day. As Yegge says, writing about something help clarifying it to yourself, and maybe other people can help clarify it even further.

Written by talgiat

June 25, 2008 at 2:16 am

Posted in start

Tagged with ,