Iñigo Medina Blog It's all personal

SQL Index Fundamentals

Web Development means a lot of use of SQL, even in the time of the NoSQL Hype. A great amount of code running under the hood is always talking to some kind of database. As usual, the more you use something, the more you ignore how it really works. That lack of knowledge results sometimes in wrong data management and performance issues. Since programming and software design relies on data structures, for performing code structures over them, the more you understand database structures and its internal operations, the best you design your code.

Software Development Fundamentals

Writing code is not an impersonal activity. On the contrary it has a close connection with feelings, taste and personal ideas. That means there is not just a way of doing things in programming, and those personal framework is at the end the origin of main software development decisions. I have tried to summarize those ones I personally like.

Source Code Management Quality

When you write code, in a team or just as a single developer, you get a lot of benefits using a Source Code Management (aka Version Control) tool. When you start to use it, you don't even know how you survived before. Version Control System (VCS) records changes to file/s over time so that you can recall specific versions later. It helps a lot giving you an structured way for managing changes, naming them, tagging them and sharing them with other developers. Despite its importance, there is often a lack of taste for VCS management among developers. Let's see some of them.

Web Browser Fundamentals

A painter knows well how the surface works, paper, canvas, copper o whatever. A plumber understands how a toilet tank expels the water. A film director has some kind of knowledge about the internal operations running when the movie camera starts to display motion picture film by projecting it onto a screen. Web developer is related to web browser in a similar form, but often there is a deep lack of knowledge about web browser's nature: how it is built, how it works, how it is used. The more you know about this, the best you design your code.