Blog

Spooky Garbage Collection

02 November 2015

Since Halloween was a few days ago, I wanted to write about a spooky topic: implementing garbage collection! I say spooky because garbage collection is one of those ubiquitous things that programmers use, but some may not understand (like shells). I’m a fan of demystifying these sorts of things, so I thought I’d share some of the experience I gained implementing it.

Read more

A College Student's Perspective of Startup Buzz

15 October 2015

I know that as a college student, I’m subject to a lot of selection bias in my media and social groups. So what I’m about to write may come out of left field to many people, but I’d like to think that it may ring true to some students and professionals in the field of software engineering.

Read more

Computer Science Fundamentals: Programming

23 September 2015

When I’m around friends and family I frequently get the question, “what is it exactly that you do?” I really appreciate questions like that, but they’re also really difficult to answer. Computer science is a world full of jargon, and when I start using that jargon in my explanations, it inevitably leads to blank looks. But the thing is, contrary to what some people seem to think, you don’t need to be a genius or a computer wizard to understand the basics of computer science.

Read more

Why You Should Hire Computer Science Majors

30 August 2015

This morning my parents forwarded me an article in the Wall Street Journal, entitled “Why I’m Not Looking to Hire Computer-Science Majors,” by Daniel Gelernter (CEO of a startup called Dittach). It was an interesting read, but one that I ultimately disagreed with, enough to write about it here on my blog. Unfortunately, the article is behind a paywall, so you can’t read it without a subscription[^paywall]. Here is a brief summary of the main points Mr. Gelernter made:

Read more

Python and Pie!

22 August 2015

Every year at the end of freshman orientation, incoming CWRU students get to attend a “Saturday College” (SatCo) of their choice. They are opportunities to learn something new and exciting before getting into the daily grind of “real classes”. Student organizations have historically led their own SatCos to advertise themselves to the incoming freshmen. Today, Hacker’s Society led our very own SatCo, Python and Pie!

Read more

The Wild World of Open-Source Licensing

13 August 2015

Imagine that you’ve just finished an awesome program. As a programmer, you’re faced with a slightly weirder intellectual property world than most other creative disciplines. In most of those disciplines, when you create something you take steps to protect it – patent, copyright, or whatever legal protection is applicable to your creation. But in the world of software development, we have these crazy things called “open source” and “free software,” and a lot of people make their programs open source. But then we also have licenses with lots of legal language in them. For many new programmers, this raises a lot of questions, like “why would I want to make my code open source?”, “how do I make my code open source?”, and “what are all these licenses?”. This article will hopefully help answer those questions for new programmers and non programmers alike.

Read more

GitHub for Non-Coders

07 August 2015

I’ve heard the phrase “GitHub is like Facebook for programmers” a lot. In fact, I’ve used it myself a few times when trying to explain GitHub to people who don’t program. But it’s not really accurate, so I thought I’d take the time to write a little article targeted at non-programmers to explain exactly what GitHub is. Unlike what many programmers might want you to think, it’s not too complicated.

Read more

On Tetris and Reimplementation

12 June 2015

I’m the kind of programmer that likes to implement everything myself. That’s not to say I don’t believe in other people’s work. But rather, I believe that if I do something myself, I will gain a lot more from it than if I use someone else’s implementation. For instance, I’ve implemented my own regular expression parser in C, using my very own C data structures library. Hopefully I’ll post a bit more about those in the future.

Read more

Presenting YAMS, the Awesome MIPS Server!

17 May 2015

Now that exams and projects are all finished for this semester, I finally have the chance to present some of this semester’s most exciting accomplishments to the world. First on this list is YAMS. This was a collaborative course project for EECS 314, Computer Architecture. I worked with Katherine Cass, Jeff Copeland, Andrew Mason, Aaron Neyer, and Thomas Murphy in order to write an HTTP 1.0 server in MIPS assembly.

Read more

Superfish Explained

20 February 2015

Yesterday a big story was broken about Lenovo selling computers with malware, called Superfish, preinstalled. Most people are familiar with the typical crap that comes preloaded on a new computer. They are usually low quality “trial” programs that you’ll need to upgrade if you want to use them. Your computer manufacturer puts them on their computers because they are paid by the people who make these programs. But these programs aren’t usually malware. They may be crap, wastes of space, or just plain annoying, but rarely are they malware.

Read more
Previous Next
LegalRSS

Creative Commons License

Stephen Brennan's Blog is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License