Brad For Dem Bedded

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Monday, 29 November 2010

Being Clear About The Work I Want To Do

Posted on 15:08 by Unknown
A Better Way of Work blog has a posting saying people should make it clear what the work you want to do is.  I'm going to do that and I'd like to be able to write additional posts under the "work" tag to update my status on this.

I want to do work that:
  • Is interesting
  • Allows me to learn and to teach
  • Involves open source software or hardware
  • Pays well enough that I feel secure
  • Doesn't bog me down with corporate bureaucracy

I'm willing to give up playing hockey.  I've played for the past 22 years but I'd rather focus on the work I want to do.  That will net me extra time in the evenings to spend with my family or to do my work.

I'm willing to give up sleeping in.  I'm trying to create the habit of waking up before 6am so I can work before going to my job.  So far I've been successful at doing this 2 or 3 times per week.  I'd like do this more often.  Yes, I get tired earlier, but I'm much more focused and productive early in the morning.

My biggest fear is that I won't be able to do the work I want to do and still make enough money to be secure.  I don't need to be rich but I do need to be able to provide for my family.
Read More
Posted in work | No comments

Saturday, 20 November 2010

LED Lighting to Replace Fluorescents, The Future!

Posted on 10:30 by Unknown
I broke a fluorescent U shaped bulb yesterday evening in my kitchen.  I was attempting to set it on the counter so I could remove the bulb that was in the fixture and it tapped the counter ever-so-slightly, shattering into a million pieces.  I attempted to follow the EPA guidelines for cleaning up the mess, mercury and all, but it's not easy.  We have hardwood-like floors in the kitchen, so after opening a bunch of windows and going in another room for a bit, I was able to scoop up most of the glass and powders that were near where the break occurred.  But then there's glass everywhere, and I mean everywhere!  Little tiny shards of it.  It was a pain to clean up.  After cleaning up, I proceeded to freak out about mercury.  How much is in the air?  What's too much?  Am I breathing it?  What's the impact on me, my wife, and our cats?  I proceeded to cleaning of the entire kitchen: floor, counters, and stove top, multiple times.  Windows and doors were open with fans running full blast for about 3 hours.  That should get it all out, right?

Come today, I'm still paranoid.  Who can I call about this on a Saturday?  Well, the National Poison Center is open 24/7, so I called them.  A very professional woman answered all my questions, told me the way I cleaned up was fine, and reassured me that even cleaning up just one bulb completely the wrong way on wood flooring is nothing to get concerned over if I've had windows and doors open.  It made me feel a whole lot better.
I still cleaned the kitchen again after hanging up.  Just to be safe :)

Why am I so concerned over this?
It's because there's no sure way to know what the heck is going on with mercury.  I'm no expert but I do know about RoHS, and mercury is definitely one of the restricted substances (ironically with an exemption for fluorescent bulbs).  It can't be good for you.  But you can't see it (when it's vapor), smell it, taste it, or easily test what concentration it exists in with a DIY kit.  Thus, I was paranoid about it.

I don't want this to happen ever again.  But how can I ensure that this doesn't happen again?
Getting rid of all my fluorescent bulbs seems like a decent answer.  But incandescents use quite a lot more electricity and don't really come in tube sizes so they're not really an option.  What about LED lights?

LED lights aren't really easy to buy right now.  Home Depot lists quite a few different types of bulbs (84 in the LED lighting section) but many are only available online and some of those listed are holiday lights.  None of those listed are tube type that can replace fluorescent bulbs.  All are expensive (think 10x the price of incandescents or CFLs) and generally have lower light output compared to fluorescent or incandescent bulbs.  I searched around online and found some places selling tube type LED lights but every single one I found requires you to rewire the fixture to bypass the ballast and starter.  Some even require an external power unit (I assume to convert the AC to DC) that has to be wired in. 

I can rewire my fixtures to support different types of bulbs (I'm an EE and I know my way around a wire nut) but I don't want to do this.  I'm pretty sure no body wants to do this, they just want to buy a light bulb and put it in.  That's how light bulbs are expected to work.

I think this is a market ripe for innovation.  With upcoming US regulations requiring higher light output per watt combined with people's dislike for CFLs (and fluorescent bulbs in general [warm up time, flickering, buzz, cold weather performance, lack of dimming, etc]), the LED market place is going to experience rapid growth.  Right now the growth seems to be in normal screw in type bulbs with some less elegant systems for tube bulbs.

I'd expect the LED tube bulb market to be the largest market, yet there doesn't seem to be a (literally) drop in tube LED bulb out there at any price.  Schools, corporate facilities, and hospitals use tons of tube lights and are often concerned about mercury releases, energy consumption, and "green-ness."  These same institutions also don't want to have to pay an electrician to rewire every single light fixture.  Tube LED lights that are a drop in replacement for tube fluorescent bulbs would sell like hotcakes!  Even if there was a price premium, early adopters would pay extra to get their benefits.  This would drive volume and technology development, ultimately bringing prices down.

Maybe I should design a tube LED lighting system...
Read More
Posted in energy, health | No comments

Wednesday, 17 November 2010

Computer Configuration User Interfaces Suck

Posted on 05:15 by Unknown
When buying a computer, especially desktop or workstation class computers, why is it so annoying to configure a computer that you want?

For example, go to Dell.com's "Large Enterprise" store and find the lowest cost configuration that gets you a workstation computer with at least the following specs:
  • 2 or more processor cores with VT extensions (of any speed)
  • 4GB of RAM (with or without ECC and of any speed)
  • Either a 160GB 10k RPM or 128GB SSD hard disk drive
  • DVD+/-RW burner
  • Windows7 32bit Professional w/ XP mode
It's so impossible it's not even funny.  I attempted to wade through this exact situation at my Fortune 500 the other day and I was not a happy camper.
What's the difference between an Optiplex 980, 960, and 780?  How do those compare to the Precision T1500 and T3500?  Which one will let you get at least the above specs for the least money?  Why the #%@$ can't I get a 256GB solid state drive in any computer I want?

I have no friggin idea.

A great idea would be a web 2.0 style drag and drop interface for configuration of a PC.  Along one side it would list all the different categories of things you can choose, like processors, RAM, disk drives, graphics, etc.  You'd have a work area in the middle and you can drag any of the categories onto the work area.  Once you drag a category onto the work area you can narrow your selection of available choices by putting constraints on the category, like I only want >2 cores.  As you refine your search by adding constraints, options that aren't compatible with your constraints would simply not be available (like if you choose a constraint of ECC memory being required, you wouldn't be able to choose a Core2Duo processor anymore).  As you refine your search by putting constraints on categories and adding additional categories to your work area, another column would list the number of configurations that fit your requirement along with highest and lowest prices.  Most people would simply pick the lowest price computer that met their requirements.

This would be great for pretty much anyone who has specific requirements for their PC.  It wouldn't be that hard to develop (at least compared to other configuration interfaces) and would probably get a lot of use by customers.  I'd think someone like Dell would really reduce the headache of customers by offering a system like this.  It'd even help their internal sales people, probably especially when quoting larger orders for corporate clients.

If no one has something like this next year, maybe I'll teach myself Ruby on Rails and some JavaScript and do it myself.
Read More
Posted in computers, web 2.0 | No comments

Friday, 12 November 2010

Open Source (at my Fortune 500)

Posted on 04:54 by Unknown
At my Fortune 500 company the other day, there was a presentation performed by some of the lawyers about open source software and how it can be used within the company for internal uses and for use in products.  It was interesting and I'm glad I went, but it was held right before lunch and I was very hungry, so I only stayed for the first half.

In the first half of the meeting the lawyers reviewed the requirements of open source licensing, such as the fact that with most licenses you must provide the same freedoms you received and that open source licenses are just like closed source licenses, they use similar laws to be effective.  This is interesting because one word that got a lot of attention is "distribution".  Another topic that came up frequently is "viral" licenses that can "infect" other software (those are words from the presentation, not my words).

What counts as distribution?  Does passing a copy of a software from one employee to another count as distribution?  With pay-for software, often it does, as you're expected to purchase a license for each person or machine that the software executes on.  But sometimes with open source software it can be assumed that distribution means passing the software to another entity, be it another corporate entity or a customer.  Like when I download a copy of Debian GNU/Linux from debian.org, that's clearly distribution because I'm not a part of Debian, I'm just a user of Debian.  If I install Debian on my computer and my wife's computer, does that count as distribution?  Do I then have to comply with all of Debian's licensing terms regarding distribution?  It gets tricky, did I just "distribute" a copy to my wife?

The "viral" part is also interesting.  My company doesn't want to have to release large amounts of our currently closed source software to the public (or even just our customers) because we currently make a bunch of money selling said software.  Should a "viral" license "infect" our current closed source software in such a way that we release some software that used something with a "viral" license, we'd then be obligated to give away the source to our closed source (or at least part of it).  It's a legitimate issue for closed source software shops that make money the Microsoft way, by charging for each copy sold.  It also makes sense because some of our software does really neat stuff that not many competitors can do.  It's what sets us apart and we don't want to give our competitors any advantage if we can help it.

I understand that distribution is a strange term that may be defined differently by different people and that makes it tricky.  And I understand that "viral" licenses could force us to disclose source code that's currently secret.  But what saddens me is that we're not changing our business model or internal practices (very much) to take advantage of open source.  Not even in just a few of our products.

Jeff Atwood blogged recently about how routers are becoming a commodity hardware platform because of things like DD-WRT.  My company makes hardware and provides services for both our software and hardware (along with various other things that we do).  It would be interesting to see my company (and / or competing companies) release source code to the public and focus on other avenues of making money, mainly service, support, and hardware.  We'd have to keep ownership of the software in the sense that the Mozilla Foundation retains ownership of Firefox but allows the public to contribute.
Read More
Posted in open source | No comments

Tuesday, 9 November 2010

What's Going On in CLFS Chapter 5? [/tools and /cross-tools]

Posted on 05:19 by Unknown
In building the CLFS PowerPC cross compiler the instructions say to create both the /tools and /cross-tools directories (these are actually symlinks to directories of your choosing but it's the easiest way to reference what I'm talking about).  I didn't fully understand why this is the case so I did some Googling and re-read parts of the CLFS book.

Turns out it's briefly described across various sections, including: 4.2 (Creating the /tools Directory), 4.3 (Creating the /cross-tools Directory), 5.4 (Linux-Headers), and 6.1 (Introduction to chapter 6).

The /cross-tools directory is where the actual cross compiler and its assorted "friends" will live.  The /tools directory is where we're building a temporary system that can actually build a real system.  The entire goal of chapter 5 is to build a GCC cross compiler that executes on your desktop PC and builds executables for some other computer system (in my case, my desktop's an x86_64 box running Debian Lenny and I'm wanting to create executables for PowerPC Linux).

A fun problem is that in order to build a cross compiler, we need a compiler (and a bunch of other stuff).  There may be a shorter method to achieving this, but I outline the CLFS way of doing things:
  • Starting off with section 5.4 (Linux Headers), just the header files for a Linux kernel are installed into /tools/include.  The headers will be needed later to build Glibc.   
  • In section 5.5 (File), we build and install File into /cross-tools (File lets us figure out what type any given file is).  This version of File we build is a native application on our desktop PC and is used by other steps.
  • Section 5.6 (Cross Binutils) has us build a set of binutils, again these are native to our desktop PC.  No cross compiling yet.  Binutils assists in compiling and linking programs.  We'll use this set of binutils to build our cross compiler, GCC.  Binutils gets installed into /cross-tools.
  • Now we get to some compiler compiling, section 5.7 (Cross GCC - Static).  Here we build a very simple, statically linked version (it includes all libraries it needs internally to itself rather than reference them being installed in another location) of GCC that can only compile C programs.  GCC is actually built without any C library (Glibc) as we don't yet have it.  GCC goes into /cross-tools.
  • Section 5.8 (Glibc) finally gets us to the C library.  When configuring Glibc, we must tell the configuration script how to find all the different items we've already installed, as they're in non-standard locations.  Glibc gets built using our statically linked GCC and our kernel headers, it has just enough ability to do so, and installed into the /tools directory.  The kernel headers are needed as some of the implementation of the C library involves making system calls, thus the C library needs to know how to make those system calls.
  • Now we can finally create an actual cross compiler.  Section 5.9 (Cross GCC - Final) finally has us build a real C and C++ cross compiler.  This step uses the previously built statically linked GCC and Glibc to create a real, dynamically linked, version of GCC.  Now we have a cross compiler!

I'm curious to see how much of what was used to build our cross compiler is still needed in order to complete the CLFS book.  Maybe this is a job for git (another thing I'd like to learn).
Read More
Posted in clfs, embedded, open source | No comments

Monday, 8 November 2010

Cross-Compiled Linux From Scratch

Posted on 05:07 by Unknown
I'm following the Cross-Compiled Linux From Scratch (CLFS) version 1.1.0 book for PowerPC.  I'm using this to make sure I understand what's going on with cross compilation and setting up a basic Linux system for a different architecture.

I've previously followed the CLFS book for creating x86 and x86_64 based cross compilers for PowerPC Linux at my day job, but I never really understood why I did each step in the process.  I also do not have good experience with a lot of the tools used, such as ar, as, sed, and qemu (as I don't actually own any PowerPC hardware).

My goal is to first understand the entire CLFS process and be able to either commit helpful changes back to the project or to be able to write additional documentation about how and why the CLFS project book has each step in it.  I consider myself to be a decent Linux user but there are so many widely different things that can be done with Linux that it's difficult to be excellent at all of them.

About 8 years ago I was a Gentoo zealot and through my adventures in installing and maintaining Gentoo boxes I learned a lot about Linux systems, but I wouldn't consider myself an expert [I've since reformed and I'm no longer a zealot, or a Gentoo user ;)].  I'm hoping to move closer to expert status by diving into the CLFS project and I want to be able to explain the entire process.  I think it's very important to have an understanding of how things go together to create a Linux "distribution" (in quotes because CLFS isn't really a distribution as much as a receipe).
Read More
Posted in clfs, embedded, open source | No comments

Saturday, 6 November 2010

Short and Sweet, But Not Always

Posted on 09:08 by Unknown
Jason @ 37signals posted a blog entry about how he'd like to teach a class where the goal is to learn how to edit complex ideas into various sized chunks that are still meaningful.

I think that's awesome!  I would love to improve my ability in this area.  I tend to ramble on about things when writing and often I can get off of my original train of thought.  I end up with long "papers" written about things I was excited to write about when I began writing.  Other people do this too and I get turned off by long essays - even on things I'm interested in - if my mood isn't ready to read something long and detailed.

Having the choice to get different sized versions of the same material is a sweet idea for marketing a product that conveys an idea.  Offer different price points that coincide with different sized versions of the idea and the customer decides which version / price / size they want based on their own factors.  This could even be applied such that the customer can "buy" the lower priced but shorter version as a trial (maybe for free?) and then opt to get a discount on a longer version that has more detail.

Or this could revolutionize the "news" industry.  Currently the fad is Twitter or articles, often they overlap.  What's missing is the sizes between 140 characters and full blown articles.  Maybe another part that's missing is the true long form version where detailed analysis and further investigation takes place.

If I ran a newspaper and I wanted to survive in today's world, I'd make an iPad / iPhone / Android app that delivers news in this way.  Then have it automatically pick articles you'd be interested in (a la Google News) based on browsing habits and present a 2-3 sentence or Twitter'ized version aggregated on a home screen but also pick the size you'd be interested in when you go to view the article with the option to see or "buy" other sizes of the same article.  Google News meets Twitter meets traditional news reporting meets LexisNexis.

It's MY SIZED news.  That's a good idea.
Read More
Posted in book review | No comments

Monday, 1 November 2010

Revolution OS

Posted on 22:11 by Unknown
I just finished watching Revolution OS on Netflix.  It was actually pretty good.  I'd be curious to see an updated version made today.  Things have changed but they're still going in the same direction they were when the movie was made.

Even though I've been using Linux and BSDs for about 11 years, I didn't really know the faces or voices of the people who've made it all happen.  It was cool to see and hear Richard Stallman and Linus.  I've known who Bill Gates is, he was often on TV back when he ran Microsoft, and Steve Ballmer throws chairs, so I know who he is (plus he's really intense looking).  It's funny that I don't care for Microsoft that much, yet I know the guys who made it happen.  With GNU/Linux (to please Richard who makes the point over and over in the movie [probably in real life too]) I had no real idea who the people behind it were other than the names.

I'm glad I watched Revolution OS.  If you've got an hour and 20 minutes to kill, it's worth a viewing if you're interested in free / open source software and Linux.
Read More
Posted in movie review | No comments

Rework, Drive, and Linchpin

Posted on 04:53 by Unknown
I have just finished (in this order) reading Rework by Hansson and Fried, Drive by Dan Pink, and Linchpin by Seth Godin.

I really enjoyed Rework.  It is part of the reason I started this blog and want to get back into Linux.  I'm not yet sure how I can make decent money off Linux with the skills I have, but I'm excited to try.  And Rework, combined with reading a lot of things written by VCs, has given me a good feel for the tech new business starting landscape.  Mostly that there's no one right way to start up a business, but without trying, it won't work.

Drive was also very good, but a little more wordy than Rework.  Also, before I read Drive, I watched some of Dan Pink's presentations on YouTube.  Basically what he says in the book is what he says in the videos online.  That was somewhat a letdown for me, but still worth reading the book as he is able to go into more detail of examples.

Linchpin kind of let me down.  It's very wordy for the message.  I liked the message, but it just takes too long for Godin to get it across.  A book with half the amount of pages would have gotten the message across just as well, if not better.

I'd recommend both Rework and Drive.  Especially if you're at a job where you feel something is missing but you're not sure what.  You're talented and capable but you're not reaching your full potential at work, these two books will talk to you.  Linchpin will talk to you too, but it's annoying and less inspirational.
Read More
Posted in book review | No comments
Newer Posts Older Posts Home
Subscribe to: Posts (Atom)

Popular Posts

  • Downsides and Upsides of Altera's Configuration Via Protocol
    Yesterday, I wrote a little about reconfigurable FPGAs attached to the PCI-Express bus as an addition to the general purpose computer. The...
  • Toolchain, Check! Kernel, Check!
    I've been working on the CLFS embedded book for a few months now.  I've been learning a lot and my goal has been to get a CLFS embe...
  • KDE4 Sucks
    I upgraded to Debian 6 Squeeze last weekend on my desktop.  I was very excited to get some more up-to-date packages (git, gcc, kernel, and c...
  • Low Cost ARM Computer
    I was thinking about my ARM + FPGA computer idea some more.  There's already a lot of competition in the single board computer space an...
  • Crypto Load Balancer Using Off The Shelf Hardware
    At my day job, I work a reasonable amount of time with cryptographic and authentication systems. Lately, I've been reading about OpenCL...
  • Embedded Linux and Long Term Support / Updates - Part 2
    In my previous post about embedded Linux long term support, I neglected Ubuntu. I had not realized how much effort Canonical are putting i...
  • The TuxedoBoard has a Brain! (picked out)
    I've chosen an ARM SoC (system on chip) for the TuxedoBoard! The Texas Instruments AM1707 ARM9 core will meet my requirements. The AM1...
  • Pick an ARM ABI When Building GCC
    If you follow the CLFS embedded book for ARM , you'll see that your ABI choice isn't used until compiling packages (ie: after you...
  • SanDisk iNAND
    I stumbled upon SanDisk's iNAND products today while doing some searching about SD cards. The iNAND idea looks very appealing to me co...
  • I'm Writing a Book
    I'm writing a book about embedded Linux but I'm not going to compete with traditional technical books.  O'Reilly isn't my co...

Categories

  • beagleboard
  • blog
  • book review
  • business
  • c
  • chairs
  • clfs
  • community
  • computers
  • crypto
  • db
  • debian
  • disapointment
  • embedded
  • energy
  • fedora
  • flash
  • fpga
  • gcc
  • git
  • google
  • health
  • hp
  • internet
  • iOS
  • learning
  • license
  • linux
  • market
  • microsoft
  • movie review
  • my book
  • next steps
  • open source
  • pandaboard
  • rails
  • software
  • SOPA
  • tuxedo
  • web 2.0
  • webOS
  • windows
  • work

Blog Archive

  • ►  2012 (10)
    • ►  January (10)
  • ►  2011 (70)
    • ►  December (10)
    • ►  November (9)
    • ►  October (7)
    • ►  September (8)
    • ►  August (1)
    • ►  July (3)
    • ►  June (3)
    • ►  May (3)
    • ►  April (8)
    • ►  March (4)
    • ►  February (5)
    • ►  January (9)
  • ▼  2010 (16)
    • ►  December (6)
    • ▼  November (9)
      • Being Clear About The Work I Want To Do
      • LED Lighting to Replace Fluorescents, The Future!
      • Computer Configuration User Interfaces Suck
      • Open Source (at my Fortune 500)
      • What's Going On in CLFS Chapter 5? [/tools and /cr...
      • Cross-Compiled Linux From Scratch
      • Short and Sweet, But Not Always
      • Revolution OS
      • Rework, Drive, and Linchpin
    • ►  October (1)
Powered by Blogger.

About Me

Unknown
View my complete profile