C, working life, compilers Making integers from pointers on 64 bit Few days ago, my colleague Paolo came to me with an interesting problem he was not able to solve. He had the same code in production and and in a
Git, tips, working life Shift Gear with Git A command, an option and a hack, not necessarily in this order, can help you to manage complex repositories.
development, working life, bugs Optimization Heisenbug Have you ever seen a bug that disappears when you try to debug it? This situation has a name: heisenbug[1]. A special type of heisenbug happened to me at
personal, working life Natural Born Yes Men Fortunately I had to deal only with few of them (until now) but, it's always been an painful experience. Especially for a natural born No Man like me.
solved, working life, bugs [Solved] The Strangest Bug I've Ever Seen I've spent two hours to find it and two seconds for the fix. There was this gigantic piece of C code to create a report by putting together
personal, working life Who's To Blame? Once, during the development of a big project, I asked the Product Manager to tell me about the relationship between two functions (let's call them A and B)
solved, Linux, working life [Solved] Broken Packages In Ubuntu One of the worst things about working for a big company distributed world-wide is that you don't have a direct contact with the leaders of the IT department.
working life, Perl, Linux Never Break Backward Compatibility (Again) Here we are again. It seems that, every time I upgrade Xubuntu, I cannot compile old Linux kernels anymore. Last time, it was GNU Make that broke the build [https:
working life, personal Understandable Code Last week I had a chat with my colleague Suzi. She wanted me to review a small change she made on a software almost entirely written by me. At some
working life, personal Multiball Pinball Have you ever played pinball? If yes, you may have run into the situation where you have to deal with two or even three balls on the field at the
personal, working life The 3 Best Things That Happened To Me As A Programmer I started to develop professional software more than twenty years ago, during the summertime vacations. I used to work in this small software house where there were really experienced programmers.
development, working life, logging What To Log Ideally a log file should contain the exact amount of information you need to understand whether the system/application is running correctly or to find the causes of a bad
personal, working life, development Quick & Dirty Solutions Can Blow Up In Your Face Few years ago, I have been asked to create a component to manage a collection of items for an embedded system. The specifications were well written (actually the best I&
development, personal, working life How I Estimate How long will it take to develop a particular project? This is a question that it's never easy to answer. When you start estimating, you have a partial
personal, protocols, working life Proprietary Communication Protocols It seems that it is an irresistible attraction for private companies to create their own proprietary protocol. During my working life, I've seen that the most common pattern
personal, working life Tell Me Why, Not How In one of his last posts, Seth Godin wrote about implicit anchors that force us to follow specific paths [http://sethgodin.typepad.com/seths_blog/2016/02/anchoring-can-sink-you.html]. This
working life, personal Dear IT Department, I Am Your Customer Years ago, before getting my current job, I had an interview for an IT position. My job would have been to develop software for the company's internal usage.
personal, working life Don't Blame The Messenger Sometimes the case plays strange tricks. This post [http://simpleprogrammer.com/2015/12/11/your-automation-test-sucks/] was laying in my feed reader since some days. I haven't read it
GCC, embedded, personal, working life Another Useful GCC Attribute This week I came across a strange issue. In a process running on an embedded device, one of the threads, at some point, remained stuck. Since the gdbserver was not
working life, Steve Jobs Love Your Job Seriously, how do you think you'll do a good job if you don't like it? If you only work for the income, the best you can
review, working life, personal Reviews Are Good Last week, I had the pleasure to meet Prof. Alexander G. Dean [http://www.ece.ncsu.edu/people/agdean] from the Department of Electrical and Computer Engineering of North Carolina
working life About Projects Driven By Users I do believe that users are the most important part of a project. Really. They can provide you useful feedback, great ideas and suggestions on what can make your product
working life, personal Code Review During past few weeks, I've been reviewing an old codebase. Some functions were in place since 2008. You may think that those functions are bug-free. After seven years
development, working life, personal The Day That Never Comes The deadline is close. The customer is waiting for your fix. Your mate needs your patch before going home. No matter which of the above situations applies: the only way
development, working life, personal Code Will Tear Us Apart There's nothing worst than read the code of someone you consider a good programmer and find tons of anti-patterns [https://en.wikipedia.org/wiki/Anti-pattern]. Of course often