This week google introduced "go" their new programming language. From the Go website:
No major systems language has emerged in over a decade, but over that time the computing landscape has changed tremendously. There are several trends:
- Computers are enormously quicker but software development is not faster.
- Dependency management is a big part of software development today but the “header files” of languages in the C tradition are antithetical to clean dependency analysis—and fast compilation.
- There is a growing rebellion against cumbersome type systems like those of Java and C++, pushing people towards dynamically typed languages such as Python and JavaScript.
- Some fundamental concepts such as garbage collection and parallel computation are not well supported by popular systems languages.
- The emergence of multicore computers has generated worry and confusion.
We believe it's worth trying again with a new language, a concurrent, garbage-collected language with fast compilation.
So I decided to install the GO compiler, so I could play around with it. I found it to be a little different than the instructions.
Step 1: edit your .bashrc and add these lines:
export GOROOT=$HOME/go
export GOARCH=386
export GOOS=linux
export GOBIN=$HOME/bin
export PATH=$GOBIN:$PATH
The last two are not listed on the GO site, but I needed them to compile.
Step 2. Create a bin folder
mkdir ~/bin
chmod 755 ~/bin
This was also not included in the instructions, this is so quietgcc has a place to sit, and be run by the installer.
Step 3. Run the following commands:
sudo apt-get install python-setuptools python-dev
sudo apt-get install mercurial
hg clone -r release https://go.googlecode.com/hg/ $GOROOT
This will pull down the latest copy of go. Next, you'll need the libraries to build go:
sudo apt-get install bison gcc libc6-dev ed make
Step 4: Build and install
cd $GOROOT/src
./all.bash
If all goes well, you'll see this screen:

Go has been successfully installed
I am using Ubuntu Linux, Karmic Koala with GCC 4.4.1
If you have any questions, feel free to contact me!
Tags: compiler, go, Linux, Programming, software, ubuntu
For those who have emailed and asked about the pictures from the weather balloon, Justin had another launch last weekend, and the pictures came out great. These are the best pictures I've seen for a project like this.
Justin's Near Space Adventure - Flight 2
This is a pretty awesome project!
So a buddy of mine has come up with a really cool idea, to launch a weather balloon into the atmosphere and take pictures of the earth. Some students at MIT did it a while back, and he want's to do even better, and he's put a lot of planning into it. I think it's going to be really awesome.
I feel pretty lucky to be involved with it, even if my role is just driving around looking for it when it lands. We'll likely be launching it from my parent's house in Gaston, and I'll take some pictures. I'll post pictures from the flight too, as soon as they come in. Should be an interesting, and very geeky project.
Check out Justin's site for more cool stuff.
How high is 100,000 feet?
While browsing a forum recently, I found a thread that really made me reminisce. Someone has asked about browsing the internet before it was popular, and what it was like. Before the internet was in every home, before we were tweeting or facebooking, instant messaging or watching videos, the internet was a much simpler place.
In 1988 or 89, I remember getting on the "internet" for the first time. It was at my buddy Ryan's house (RIP) and we were both budding computer nerds, who loved learning about the latest technologies. He had somehow "acquired" access to telenet, and we used it to browse bulletin boards all over the country, without paying long distance fees.
There were no graphics, no sound, and no cool videos. There was no "tweeting" with your phone, or instantly talking with someone online. It was much simpler, and seems very primitive now. You had to post a message, and wait a couple days for someone to respond. It was a different time for sure.

I would give nearly anything to relive those days sitting in Ryan's house, browsing all over the world reading those crazy text files about telephone switching systems and UNIX servers, drinking mountain dew and eventually going to sleep because the sun had come up, and we knew we'd be in big trouble if his mom woke up and found us in front of that computer, hacking away.
My First Bulletin Board System (BBS): Distant Realms Online
In the early 90s, when I was in high school I had decided I was tired of being a spectator, and I wanted to create my own BBS. For those who are unfamiliar, a BBS was a computer other people could dial into and download files, chat with others, or upload files to. Most of the time a BBS was just a computer in some guy's house, and you would find the latest video games, images or whatever you wanted on it. It was not that different from the internet. But most of us didn't have internet. So we dialed in over phone lines and connected directly with others.
Boy, I at 31 I now feel like an old man.
Anyway, when I was a sophomore in high school, I decided to build my own BBS. I saved up my money and bought a 386 16mhz computer (no that's not a typo. The computer you're reading this page on is probably at least 2,000 mhz, but back then things were much slower) and I built it with the sole purpose of running a bulletin board. I downloaded a shareware copy of "Spitfire" BBS software, and spent HOURS reading the manual so I could set it up. I purchased a phone line that was dedicated to it, and set it free.
When talking with Ryan, we were trying to come up with a name. I wanted something "space like" (hey it was 1992 after all) and cool. Ryan suggested "Distant Realms" because it was a place that was far away from normal, and offered something different from the other BBS at the time. Even as a 16 year old kid I knew you had to be different to succeed, and wanted to copy nobody. So we named it "Distant Realms Online".
The birth of Distant Realms Online
I scoured other boards and downloaded their informational text files on programming, hacking and cracking, and got every shareware video game I could think of. I even hit telenet to see what the East Coast guys had. I stopped at nothing to have the latest and greatest stuff on my board. Remember these?
Jazz Jackrabbit
Arctic Adventure
Castle Wolfenstien
Beyond the Titanic
Bio-Menace
Commander Keen
Blake Stone
Crystal Caves
Dark Ages
I could go on an on. Long story short, I made sure I was the ONLY board in the Portland, Oregon area that had the latest and greatest games, all the time. I really spent a lot of time finding this stuff. I got really competitive with the local boards, and started creating original content just to beat them out. I read about AT&T Phone systems from tech manuals in the library (hey, the statute of limitations is up I'll admit it) and wrote files on how to exploit it. I bought a book on C from Egghead for 40 bucks, learned it and wrote tutorials on it for hours. I wanted to be the best.

Within a month or so, I had 50 members of my BBS. I sent out a system message, saying if every one of them donated at least a couple bucks, I could buy the professional version of the software and it would have more features. I ended up with over $120 being sent to me, so I bought the full version of the software.
After that, the member base started building up. Soon I had 300 people coming on to my bulletin board, and I was swamped. I would turn the ringer off on my parent's phone and use it as a second phone line. I remember getting bombarded with messages from people saying the lines were always busy. At one point, I had to limit a person's time online to 30 minutes, (unless they paid $10 a month for a premium account) just so other people could get in. It was a wildly popular board.
My first lesson in Marketing
That bulletin board taught me a lot. I was a stupid 16 year old kid with a freakish passion for technology, and I was employing good marketing techniques before I even realized what I was doing. I constantly browsed other boards to see if they had something I didn't. If they did, I would add it. I still remember spending countless hours trying to compile some neat C program, just so I could could add it to my board and have something nobody else did. Yes, I'll admit that much of that stuff was "hacking" related, but I was young, dumb and really engaged.
Distant Realms "blows up"
After a while, my BBS started getting really popular. I had donations coming in like crazy. For a while I thought my measly McDonald's salary would have to pay for this weird hobby that nobody understood, but donations would come in the mail nearly every other day. I ended up using those funds to purchase software for my board members, like Legend of the Red Dragon and other cool software people would use. I had someone on my BBS nearly every hour of the day, and I had so many downloads it wasn't funny. It was a blast.
Distant Realms Online at it's peak.
Around 1993, Distant Realms had hundreds of members. People from all over the country were coming to download the latest shareware video games, Hacking and cracking files, and custom C programs I had written for others. People would use the "chat" module and exchange information. People would play LORD deep into the hours of the night. Donations ended up purchasing very expensive hard drives, so I had more room to have more stuff.
I remember going into Portland to buy a 28.8 Modem from a computer store for $400. All paid for by donations from my BBS. At the time, that was about 2 weeks salary for me, but I resisted temptation to keep it for myself, and instead buy something to make the BBS cooler. I was one of the first bulletin boards in the Portland Metro area to feature "Super fast" 28.8 access. (Hint: Most "SLOW" modems now that people rarely use are 56k access).
Who is this kid?
I remember one night getting an invitation to join some other BBS owners in the Portland Area to hang out and get to know each other at the Portland Hilton, in downtown Portland. I decided to go. I dressed up somewhat nice, and took my girlfriend at the time (who had no idea what the hell I was doing with these computers) down there to meet everyone. They were shocked to learn that the owner of one of the biggest and most popular BBS systems in Portland was a pimply-faced teenage kid who drove a POS chevy nova in to meet them. It was really fun talking shop with the other owners, who were in their 20s or 30s, and working in IT.
I'll never forget how some of those people reacted to the fact that person they were trying so hard to compete with was just some dumb kid. But they were really nice, and I had a lot of fun. I told them how I spent countless hours learning stuff, just so I could put it up on my board for other people to learn.
The eventual death.
Around that time I decided to get a CompuServe account (my first real exposure to the internet). I remember having to beg my parents to put it on their credit card because they didn't allow people under 18 to sign up. I used CompuServe to find content to put on my BBS.
But in 1994, I heard of this new way to access the internet, America Online. I signed up for this (I actually signed up so early, I had the email address of jmorgan@aol.com from 1994-1999). Once I discovered the Internet, I knew the BBS would die a slow death. The Internet was just way too cool for the BBS to ever compete, and I knew it. I even wrote an article on my board about "the death of the BBS is coming" and a few people didn't believe me.
Sometime around the summer of 1996, I was deeply intrigued by the internet, and spent most of my time there. I had created my own cheesy webpage, and was deeply involved with UseNet and AOL groups, and had my attention shifted away from my BBS.
I was 19 years old, and was no longer living at my parent's house, but left the computer and phone line there. One day, I decided I wanted the computer that ran Distant Realms Online to try out this new "Linux" thing, and decided to go check the spitfire logs. Only about 5 people a day were visiting the BBS (which hadn't been updated in months) so I figured it would be a good time to pull the plug. I created a "goodbye" message, and came back about a week later and yanked the machine, and shut off the phone line. Distant Realms Online was dead.
I miss the BBS.
Times were much simpler back then. I remember asking my mom to print out the SpitFire manual at work, so I could read through and practically memorize the documentation. I remember the hours I spent building the "perfect article" to explain buffer overflows in C. I remember dialing into the Library computers (even though I wasn't supposed to) and cracking out of the shell just so I could compile and try some new goofy program, ad it was the only way I could find access to a UNIX System V system.
I remember the days fondly of spending hours downloading something, starting it at night, and waking up the next morning to find it, and publish it on my BBS. I remember how nobody in my small town had a clue what I was doing, and how my "computer class" teacher used to ask me stuff about what I was doing, out of sheer curiosity. I remember talking with people on my BBS and sending them code to do something, pretending I was an adult who knew what I was doing.
And almost instantly, the internet came along and killed it all. But it was fun while it lasted, and about year after closing Distant Realms I decided to buy JeremyMorgan.com, and it's still here. Still giving out programming advice and trying to help others, still enamored by technology. I miss the BBS, but I'm glad the Internet has progressed as much as it has. I would have taken me over a year to download Visual Studio Express over a 28.8 modem.