Is Software a Science or an Art?

by

As we approach software today, often through web or mobile applications, people generally appreciate the elegance of the interaction or lack thereof. But as software engineers know, there is a lot going on behind the scenes.  Of course, with user interfaces for the masses becoming a necessity for modern applications, designers and more artistic–oriented folks have been contributing to the practice of software development. That leads to the question: Is software more of a science or an art?

How to set up and exploit an Apache Solr environment on Amazon EC2

by

What’s Solr?

Solr is an open source enterprise search platform from the Apache Lucene project. Its major features include powerful full-text search, hit highlighting, faceted search, dynamic clustering, database integration, rich document (e.g., Word, PDF) handling, and geospatial search. Solr is highly scalable, providing distributed search and index replication, and it powers the search and navigation features of many of the world’s largest internet sites.

JQuery DataTable Plugin Pagination

by

One of the most common tasks when displaying data through an HTML table is to allow the user to manipulate data within the table. Displaying data on a grid can involve many different operations (retrieving, sorting, live editing, search). Using AJAX to dynamically fill the table requires even more work since the application (in this case, javascript code) has to convert JSON/XML/TEXT data to an HTML element. Each of these tasks can involve more or less time in order to be completed, and of course, tested.

Why Things Go Wrong: A Simple Programming Problem

by

Much of programming is writing code with an obvious solution, it’s being a code monkey. You lay things out, you move them around, you wire it up, but you don’t really need to stop and think. I’d estimate that everyone is about equally good at this. But some of the work is also spent solving problems you’ve never seen before. This is where bugs are introduced, bad decisions are made, schedules are thrown out, and things go wrong. These problems are the really defining part of being a great programmer.

Twitter Stock Ticker

by

Last night I was rummaging through some of my past projects doing a little winter cleaning, and I stumbled upon this jQuery plugin that I wrote a while back. I ran the code to see if it still functions (it was using jQuery  1.3). And to my pleasant surprise, the code still runs like a charm. So, I just want to take the time to share it with you all.

Android Pattern Lock on iPhone

by

I’m a loyal user of iPhone. I’ve been using it since its first version and now I’m on 4S. Though I’m staying in iOS camp and don’t have any intention of moving, I occasionally get the urge to test out and see what’s out there. That’s the reason why I convinced myself to own and play with Dell Streak 5″ phone and Google Nexus S. They are both smart smart-phones. But it’s hard to pick their pros and cons by simply “playing” with it. You’ve got to use it. Daily. For everything including surfing, speed dialing, social-networking and games. Everything. And that’s something that I didn’t get a chance to do until last summer when I was traveling and in need of an unlocked phone. I could make my iPhone work (don’t ask me how) but thought I’d give an Android phone a real kick.

Dieter Rams’s Ten Commandments

by

You might not be aware of it yet, however SFMOMA (the San Francisco Museum Of Modern Art) is currently hosting Dieter Rams’s “Less but Better” product exhibit.

You might also not be aware of who Dieter Rams is, since he is not directly related to the software industry.

Indeed, for almost 40 years Dieter Rams was Chief of Design at Braun’s:  he designed record players, razors, radio sets, etc.

A quick introduction to not editing video

by

Pop quiz!

Given (A) foo.mov, (B) bux.avi, and (C) baz.m4v, which can your video software handle correctly?

  1. A
  2. A & B
  3. All of them
  4. All or some or none of them depending on their codecs, your software’s codecs, and whether they’re doing anything special with the container format.

Running A Good Scrum

by

Scrum Master - Save the team

Whether or not they follow other precepts of Agile development, many software companies have implemented some form of a ‘scrum’ – a short daily stand-up in which team members report on their current progress.  A well run scrum can be an extremely valuable communication asset for team members.   A poorly run scrum can be an annoying and time consuming hassle that turns teams off of scrum.  And even though teams are supposed to be “self-organizing”, in my experience a good scrummaster is always important for a good scrum outcome.  Below I’ve outlined a few common problems for scrums, and things the scrummaster can do to keep things on track.

Name Recognition

by

Dear reader:

After being heads down in the code for quite a while now, we decided to dedicate a little time to sharpening our writing skills. In the coming weeks you should see a number of contributions covering a wide variety of topics. We’ll kick things off today with a seemingly pedestrian subject: the naming classes, files, variables, packages, etc.