On Scientists, Developers, and Engineers: Differences and Overlaps

On Scientists, Developers, and Engineers: Differences and Overlaps

Job titles are important. It is interesting how many people give little thought to their title, or even their job description, and are then confused when they don’t see the success they expect. While there are many different ways to dissect this topic, I’m going to work through a particular distinction that has an increasing relevance in the field of software: the difference between science, development, and engineering. If you browse the web, read blog posts on career development, or even look through college program descriptions, it is not uncommon to see the three terms somewhat mixed. You will see…
Read More
Moving Bits: Networking Fundamentals, Part 2

Moving Bits: Networking Fundamentals, Part 2

In the first part of this series on Networking Fundamentals, I discussed three basic layer concepts in networking, and described them using an analogy to a physical postal system. If you haven’t read that post, please review it before moving on. However, to briefly recap, the three layers I discussed were: a physical layer, which allows for the conveyance of information, and is analogous to the carriers, logistics systems, and delivery and drop-off points in a postal system;  a packaging layer, which allows for addressing and packaging of information, and is analogous to the envelope a letter goes into; and…
Read More
Moving Bits: Networking Fundamentals, Part 1

Moving Bits: Networking Fundamentals, Part 1

At The Aspiring Principal I strive to offer a broad variety of insight, not only on career and industry topics, but also technical ones. I have found recently that many engineers think of networking as black magic, and as a consequence tend to avoid understanding it, thinking it’s too complex or too difficult. The unfortunate effects of this avoidance are bad decisions or unfounded assumptions when building systems. In this series I will strive to provide a fundamental review of networking, with particular emphasis on HTTP interactions over TCP/IP (i.e., Internet-like) networks. Three Layers, and an Analogy While it is…
Read More