Posts

Showing posts from September, 2015

10 Methods to Help You Debug Legacy Code

Image
A large majority of the work we do in our project is to fix reported bugs. The project code is considered legacy code in the context of test driven development. Not only is the code considered legacy code, in many cases it is poorly written which makes it even more difficult to find the real issue. The code was inherited this way and it is not something that you can simply change even with adequate time and resources the ends may not justify the means to fix it completely. All this makes the issue of finding the solution to existing bugs very difficult. But all is not lost; there is an approach that we can take to make troubleshooting much easier. I am writing this paper with the goal of outlining a structured approach that we can take to make it easier to debug the legacy code. This paper is comprised of several tips that demonstrate the creativity necessary to find and fix the root cause of a reported bug. 1. Accept that it is not easy The first thing that you

Getting Started with Raspberry Pi

Image
The Raspberry Pi has been around for some time, three and half years to date, and it had not caught my interest until recently.  Sure I had heard about it and although it seemed interesting it was also a little intimidating, to be honest.  That's until recently when an individual decided to start a makers and coders meetup group right here in little old Belton Texas.  When the meetup up group was started I was immediately interested since I had already been introduced to making things with the Arduino.  I can't say enough about how pleased I am with joining this group.  I have learned some cool new geeky things since then about the Pi, Linux and Python. So What Is the Raspberry Pi? To put it simply in laymen's terms, the Raspberry Pi is small computer that has enough power to be a personal computer.  No it won't necessarily replace your Windows laptop. It does not have the same amount of power and hardware resources. Also, the operating systems available for

You Can't Learn Any Language in 15 Minutes

Image
Last week I wrote the post Learn Python in 15 Minutes .  The point of that post was to demonstrate that the basic fundamentals of the Python language are simple and easy to learn.  However I will be the first to admit that you cannot learn any language in 15 minutes.  You won't be anywhere near proficient at least. Working in a particular language consists of much more than the language's syntax.  Part of being fluent in a programming language consists of being familiar with certain things such as string manipulation, collections handling, familiarity with the supporting framework and libraries and available third party frameworks. Anytime you learn a new language and you are already proficient with a different language, the question that always comes up is "I can do X thing in language Y, how do I do that in language Z?".  This is similar to knowing a real language but unfamiliar with the nuances of a different culture.  Don't believe me? Put someone from

Learn Python in Fifteen Minutes

Image
Lately I've dove into the world of Python. I had been hearing a lot of different things about it and about its many benefits and was curious what the buzz was all about.  It's been a couple of years, at least, since I made it a goal to learn Python and just recently decided to take the dive and really get acquainted with it. If you're a programmer and have heard of Python but haven't had the opportunity to give it a try but would like to know more about it, you've come to the right place.  In a book I've been reading lately, The Basics of Hacking and Penetration Testing ,  I read about a concept called zero entry hacking. The idea behind zero entry is explained best with the analogy of a swimming pool where the water level starts at 0 feet and gradually gets deeper.  This idea allows you to get in as deep as you feel comfortable but with little commitment of anything deeper.  A zero entry lesson is what I will give you in this short post.  You can read this