"Some people choose to walk in the rain without an umbrella. That is what it means to live free" - Roger Smith
Layne Thomas is young veteran software developer living in Seattle, Washington, USA. His favorite language is C++, which he describes as "like an indestructible old car that keeps running, even after years of rust and abuse". Although very young compared to the masters, Layne believes in many "old-school" computer techniques such as PowerOfPlainText
, and CommandLineInterfaces?
. He also holds a heretical (and assumed to be amateur)belief in the possibility of an InfinitelyComposableSystem?
. He has experience developing SCADA systems, but also enjoys his PetProject?
. Layne's parents have raised llamas since he was in high school, which has had subtle but profound effects on his psyche.
He has recently become very interested in the Windows Presentation Framework.
Originator of LaynesLaw
, Proponent of RandalsRule
, Creator (and destroyer) of the LlamaPattern
- One year developing C/Php/Perl-like embeddable scripting language with compiler and virtual machine using Flex/Bison(Lexx/Yacc).
- Two years developing PDA (PocketPC) software, including network communication, encryption, and cross-platform issues.
- Five years developing SCADA software, including 2d & 3d graphics, network programming, user interfaces.
- Three years developing Sybase(SQL/ODBC) interfaces to the genetic database for ResearchGenetics?.
- Four years providing custom-coded projection visuals for ~50 concerts/shows.
- Developed internet based tool with SQL accounting for burning custom Audi vehicle control chips.
- Ten years professional C/C++ experience.
- 80x86 Assembly(MASM and TASM)
- The standard learning languages - Logo, Basic, Pascal
- Fluent in English and Spanish, some Latin and Russian - i.e. I can read French
- MS-DOS 3.0-6.0 and Windows 3.0/3.1/95/98/NT/XP/2K/CE(and cross-platform)
- Unix - Linux/AIX/DEC/Irix/Solaris
Some pages I'm proud to be involved with:
- A concept I've been wrestling around with.
Exile Motorcycles - Got into a discussion earlier with a friend about minimal design. He's a motorcycle enthusiast, not a programmer, but brought up an england motorcycle maker whose focus is on no-frill motorcycles. Something about how good software should focus and even expose the fundamental core parts, and hit that level between hackable and stable. (I know, I know, c2 isn't a blog, I just haven't full crystallized the conversation into a coherent focus)
Bongard Problems - http://www.cs.indiana.edu/~hfoundal/research.html
Heard today: "I don't mean to sound like a nerd or nothing, but that surfer guy coming up with that E8 theory reminds me of when Kary Mullis invented polymerase chain reactions!"
Mechanical computing using legos:
Mechanical computing using marbles:
High points in my computer education:
- When I got the computer to tell *me*(not the world) "Hello" the first time.
- Cracking the first game using a hex editor.
- My first 1000 line program that was more powerful than the my 10000 line one.
- Realized that reading virus code was scarier than slasher flicks
- Understanding how patterns, languages, and humans all shared the same paradox.
- Implementing Bresenham's line algorithm for ModeX in 386 assembly - C/C++ was easy after that. . .
- Telnetting around the world until I telnetted back into the system I first left. . . before they locked everything down.
- When sending data directly to the VGA's port let me shift a palette, and create a 320 by 7.25 graphics mode, and blow any monitor I ran a certain program on. . .
- Watching the internet go from telnet/finger/whois to browsers and seeing an url on a real estate sign near my parent's cabin - 25 miles from civilization. I hadn't thought of the internet as mainstream until that point.
Low points in my computer education:
- Trying to explain in the pre-web days why the internet would replace BBS's, and why telnet was not just a dos prompt.
- Being called a luddite for insisting "shell consoles still had advantages over GUI's, and the two could work together anyhow"
- Trying to debug my 5000 line program written before I had learned why global variables were bad.
Favorite programming books:
Favorite concept/design books:
People whose work I respect:
- SusanKare - For being first at being good at icons, and for the five pixel font
- EwDijkstra - For spotting the problem we are in right now, decades ago.
- LinusTorvalds - For being an engineer first, a linux advocate second.
- WardCunningham - For developing and maintaining Wiki
- DonaldKnuth - For writing books I aspire to understand