I recently reviewed a SQL query that was returning duplicate results. Since I expected, and needed, a single result from the query this was a problem. Here’s an explanation of why this bug occurred, and several different ways it can be resolved.
Stack Overflow requires that questions be largely objective, but is based around a voting system that would be largely unnecessary if all questions actually were. The requirement for objectivity can be readily tested by asking a subjective question and watching how quickly it’s removed, but it’s also made explicit in their blog posts:
Stack Exchange is about questions with objective, factual answers.
…open-ended questions diminish the usefulness of our site…
and the reasons a question might be closed:
We expect answers to be supported by facts, references, or specific expertise, but this question will likely solicit debate, arguments, polling, or extended discussion.
The message is quite clear: objective good, subjective bad.
This year I worked on a project which involved populating a huge HTML table (up to 1,048,576 rows by 16,384 columns) cell-by-cell, with data retrieved via ajax calls. Needless to say, performance was not good.
As a software consulting firm, Grio strives to provide high quality, high value software to its clients. We embrace an agile software development methodology based on Scrum. This iterative approach provides our clients with flexibility to adapt and change their product over the course of development as discoveries are made while using the software.
This flexibility can prove challenging when providing up front estimates regarding project costs. The problem arises that providing an estimate that is too high may lose you the contract; Estimating too low can result in several outcomes:
Constructing our next internal video game (Whack Attack) in the Unity software system has been a joyful experience and a return to my roots as a video game programmer. Instead of dealing with tables and lists for an enterprise web application, I find myself programming mole AI and hit reactions. As an internal project, the few hours a week I get to spend making cartoon mammals run around my phone are a welcome diversion, and makes my return to client work that much more satisfying.
As a recent convert to Test Driven Development (or TDD as his friends call him), I was surprised to hear that there were in fact 2 kinds of developer driven testing. The standard one that everyone knows of is unit testing: writing little testXXX methods that test a single publicly exposed method. But the lesser known – but just as important – are acceptance tests: tests which verify that a group of classes working together properly fulfill some functionality.
So this first post will take a closer look at the first type of testing, unit tests, and will go into the value it provides to you as a developer.
Meetings. When used correctly, they lead to synchronized teams, informed stakeholders, and better requirements. They help to identify issues affecting an organization. They’re great for resource planning, sharing vision, and all kinds of useful stuff.
A clear, focused meeting energizes the participants. These meetings are a force for good. These meetings make the office smile.
Then there are those other meetings.
If you’re like me, you probably do an increasing amount of your personal business on your mobile device, such as paying bills and conducting transactions with your banking accounts. And why not? It’s been five years now since the first iPhone came out, and since then mobile Internet use has become a part of everyday life. What’s more, major institutions such as Wells Fargo, Citibank and AT&T have their own mobile apps. So taking care of your financial business on your smartphone should be a complete breeze, right?