Blog | Admin | Archives

TRC is Life

Today, I woke up, and finished writing up a description of the two robots the TRC would be presenting today, went to work, talked to Austin about the TRC presentation, worked a little, ate lunch, talked to Austin again, worked a little more, got a call from the front desk telling me the TRC crew had arrived, picked them up with Larry and Dave, got them set up in the room, spent the next two hours watching and participating in the demo, helped break everything down, worked a little bit more, went home, held a hack session, and finally, played a few games to end the night.

Thew. TRC is life.

HTML Tables

I just discovered that HTML tables are about 9 million times cooler than I had previously known.

In other news, I saw the Bourne Supremecy last night with Maneesh, Amy, and Donna, a friend of Amy’s. It was a well done action movie that veered ever futher from the book’s plot.

Political discussions before and after abounded, which was much fun, especially the “living wage” issue. I’m going to miss Maneesh a lot when he leave for New York. We’ll have to hang out a lot before then. As for now, its off to my house to host the TRC for final preperations for their Microvision presentation tomorrow.

Correct Me If I’m Wrong…

When I ran in to a CSS/Table conundrum at work, I decided to see what Bernie thought. The links have been achored, and the text prettied, but otherwise the conversation is real.

One of the recurring themes I run into while visiting sites about CSS is how sinful it is to use tables for layout. I tried to take this to heart, but for the life of me I can’t figure out a better way than tables to align items that, to look good and make sense, must be lined up properly both vertically and horizontally.

Here is the page with a table
And my utterly failed attempt to replicate with css

Am I missing something fundamental, or are tables really the better choice in this case?

And while I’m on the line with a CSS guru, what makes it so that the elements with the position: absolute propety set conform to their parent element instead of the browser page as a whole? Is it when I set the position on the parent element that this works? If so, thats kinda dumb, imho…

Having fun with CSS I see ;) One of the things you’ll quickly learn (and seem to be learning already) is that while CSS design can prove to be very rewarding (e.g. bandwidth) it can also prove to be very, very stressful. If you’re trying to make your design look good in more than one browser it gets even more stressful :) Often times you’ll run into situations where you know you could do something in a matter of seconds using a table, or some other non-standard HTML
approach.

I try my darnedest to stay away from tables whenever possible, but as you’ve pointed out, sometimes they are the only option. As far as the sites recommending you avoid tables at all costs go, take that advice with a grain of salt. Tables are still a perfectly valid construct in XHTML 1.0 and 1.1. A lot of the presentational information has just been moved into CSS whereas in HTML 3 you could define most of your table properties in the table tag itself.

I don’t know if you’ve seen it or not, but I wrote something on my site about “tableless tables,” and it seems like an approach you might be able to use for what you are doing. Take a look at this before you decide to go the table route. What I wrote was more a proof of concept than anything else, so it would be cool to see it put to real use.

While I’m not afraid to use tables when they’re absolutely called for, I do try to avoid absolute positioning like the plague. I’ve seen too many problems with page flow when using that type of positioning in my CSS. However, if you’re dead set on it (there are certainly situations where it’s a necessity) give this a look. I believe they answer your question in the first paragraph. There seems to be a good deal of information there, so hopefully that will help.

Good luck, and try not to pull any hair out ;)

I was very impressed with your tableless tables, and I pursued making them work in my situation as well, but I ran into problems. (Correct me if I’m wrong, again…) The biggest deficiency of tableless tables is that in oder for alignment to be maintained vertically, the cells
have to have preset widths that are the same (in your case, 23% did the trick). In other words, there is an inability of cells that are supposed to be stacked veritically to resize together fit the largest content in the column. If you don’t force the “columns” to be certain size, they choose to be whatever is inside of them, and any semblance of tablehood is lost. It seems to me that in this case, CSS does not degrade very well, and tables are indeed the better answer for me at
this time, especially since they are so well supported by so many browsers.

On another note, I had some glimpses of CSS3 today, and all I have to say is that whenever it starts to get seriously supported, designing pages should be quite a bit of fun, especially with the pseudo-selectors like nth-child(2n+1) and all that :-)

It sounds like tables are the way to go for what you’re trying to achieve. If it was me, I’d spend some more time trying to figure out a way to do it in CSS, but that’s just because I like torturing myself ;) I can think of a few options, but like you said, we might as well wait until CSS3 when things become so much easier (like this).

Starting to like CSS

For me, CSS was like climbing a wall. When I came to the wall, I looked for a way around it, under it, or a door through it. I had been out of the loop for so long that the wall became stange and uninviting (the last time I really studied the state of HTML I was in 8th grade!) However, due to a new project at work, I decided that learning CSS was in order to create a compliant web site. And after climbing the wall of learning rudimentary CSS, I’ve decided I like the view from the top.

Here is the result of my first day of dabling in CSS. Let me know what you think. Its pretty cool to be able to create tabs just by having some CSS change the way certain links are created.

On a related note, the project that I am working on at work now is going to be open sourced, as soon as I get around to it. So I will be paid to develop some open source software. Not such a bad deal.

I didn’t sleep much yesterday, and I don’t plan on repeating that mistake again tonight. So I bid thee farewell, my friends.

Thickets of Intellectual Property

Yesterday, my company, Microvision celebrated recieving its 100th US Patent, which is quite a feat. While I love MVIS to death, and really want to see the company to succeed, one of the speakers at the party (I think it was the CEO, actually) described Microvision’s intellectual property holdings as “a thicket of patents.”

To me, that statement effectively describes a lot of what is wrong with patent law and its cousin, copyright law, in this country, and throughout the world. Don’t get me wrong – I strongly believe in the need to protect intellectual property while promoting its public release, which copyrights and patents allow. Without these constructs, we would be much worse off. But with so-called submarine patents, effectively indefinite copyrights, and so on, there are clearly many ways these constructs could be improved to better serve the public good with minimal negative impact on (and, I would argue, net gain by) the creators of the intellectual property.

Copyrights, for example, currently last until 70 years after the author’s death, a time limit which congress seems to extend every time Disney’s oldest movies are about to enter the public domain. Companies these days don’t have Disney’s problem, however, because works for hire are copyright the company, which magically never dies. Copyrights are effectively indefinite. (This is my understanding; If anyone knows differently, please comment!). Indeffinite copyrights are ridiculously opposed to the purpose of the copyright in the first place.

And patents can be issued for the most vague and ludicrous things, from “3D First Person Perspective Interface” (Apogee Games got sued over Duke Nukem 3D by some company with a patent stating something like that…) to patents of human genes. Furthermore, all patents last 17 years in this country, a huge amount of time in many technology and biomedical fields. If a patent’s contents were ever useful, by the time the patent expires, its useless in most cases.

The idea behind intellectual property rights is that the works are protected for a long enough time that the creator can reap the financial rewards of producing something useful to society, then the IP is released for everyone’s use. This works because intellectual property really is entirely different than physical property: Intellectual property is a public good that can be shared by all without one person’s use of it making it any less useful to someone else; With physical property, on the other hand, one person posessing it neccesarily prevents anyone else from posessing it. Therefore, it makes sense that after being protected for a time, the intellectual property should be released so that its usefulness as a public good can be maximized to society at large. If the time period that the work is protected is long enough, then the effect on the creator of the intellectal property is minimal, because most of the comercial appeal of a product fades over time, so financial gain is almost entirely front-loaded.

I propose a 10 year copyright expiration from time of release to the public, and a variable length, continuous-use-only patent arbitrated by the party applying for the patent, other interested parties, and the patent office. The benefits of these two simple changes are profound and resounding. For example:

  • Old software, such as Windows 3.1 at this point, becomes free to distribute. Microsoft certainly isnt making any money off of Windows 3.1 these days, and a lot of old computers could be useful in places without computers with software like that installed without cost (hey, we all used it at one time, it can’t be that bad). However, it is important to note that the source code to Windows 3.1 does not enter the public domain, because that was never released to the public.
  • Old songs become free to distribute (how many CDs get sold after the first 10 years anyway?). Old songs can also be resold and used for derrivative works. Think of how great it is that Bach’s symphonies are public domain. Then take any great music, and ten years later you can use it to make something even better – a remix, a re-recording, etc. This is great, because it encourages the production of additional intellectual property, which can eventually be enjoyed by everyone. Also, it creates an incentive for artists and creators to continue creating instead of relying on old works to do all the work for the.
  • Drug patents expire quickly, long enough for the researching company to recoup expenses and profit, but not so long that millions of people are screwed over for years and years because they can’t afford a proprietary medicine. Remember, we have to keep the incentive in place or the drug companies will never make the medicine in the first place. But there is no reason for government to continue perpetuating a monopoly that does more harm than good.
  • The patent arbitration process makes it so that only reasonable patents are granted. Having multiple parties with differing viewpoints gives the patent office much better and more balanced insight into the process of granting patents. The continuous-use term means that patents which go unused expire early into the public domain. This encourages patent owners to actively pursue projects which utilize the patented idea of method, and it eliminates submarine patents, where someone creates something, only to be sued later by someone who applied for and got a bunch of random vague patents that can be construed to cover whatever the actual useful product the first guy created.

Cetainly, these ideas need to be fleshed out, but I feel strongly that changes to patent and copyright law, such as the changes mentioned here, would help create a system friendlier to and better for both producers and consumers of intellectual property.

Farenheit 9/11

Today after a wonderful day at work in which I ended by successfully generating on-the-fly a control barcode for the Flic barcode scanner using code written from scratch by yours truly, I went with Maneesh
to see Farenheit 9/11.

My first reaction to the release of this movie is that I would not see it. This because Michael Moore is an avowed leftest, and I didn’t want to support him, his propoganda, or his causes. But then, after some reflecting and reading of reviews, I decided that watching it would be useful. I wanted to hear oposing viewpoints, if for no other reason than knowing what they were. While I went in with more than a grain of salt, I also tried to keep an open mind.

First, since it is a movie, I think visuals should be discussed. Large parts of the movie consisted of footage blown up from TV quality images. While it was bearable to watch, anybody who gave it a high score in visuals is retarded. And there were plenty of people that did just that on Yahoo! Movies. ‘Tards.

The attempts to direect the audience emotionally were well done. I’m not terribly emotional to start out with, and I had to grimmace to make it through the emotionally charged parts still keeping my wits about me. The hardest were the mother who lost the son in the war and the Iraqi woman who lost some family members.

The large array of factual evidence presented is the most convincing. For example, the military commitments to Afghanistan and Iraq were oppisite of what it sees they should have been. Fewer troops went to Afghanistan than police patrol the streets of New York. More than ten times the number committed to Afghanistan are in Iraq. It tooks months for US forces to penetrate Afghanistan, and only days for Iraq. Its not to hard to believe Mikey, then, when he suggests that this is the reason Osama got away, and Sadaam got caught. It is also fairly easy to believe, with the other evidence presented, that the Bush administration took on Afghanistan out of neccesity, whereas Iraq was the prize they sought, with 9/11 as the means to that end.

And that became the most disturbing theme in the movie, because of how true it seemed upon personal reflection. September 11th was used as a justification for agendas that existed long before. Take the Patriot Act. It was very telling when Michael Moore was interviewing a congressman who said that members of congress don’t actually read what they turn into law, because to do so would take too long. So Mikey decided to go and read the patriot act to them. If it takes someone whose job is to legislate too long to read a single new law, how in the world are the rest of us, who have real jobs to do, supposed to read all the laws that we are supposed to abide by?

Other interesting tidbits

  • the Afghani pipeline for natural gas
  • the tactics of Marine recruiters
  • Only one member of congress has a child overseas in the service
  • Members of congress don’t like the idea of getting their kids to sign up for the Army

Overall, seeing the movie was a good experience. I just wish there were a conservative version of Michael Moore, so we could have an equally skewed version of this sort of commentary from the right. Maybe then people would realize how screwed up the system really is. While the rest of the movie went on to try to paint Bush and Cheney as unique in their ties to Enron and Haliburton, one truth remains. If you filmed anyone in politics for 4 years, you could make them look any way you wanted, because they will certainly provide enough ammunition. Unfortunately, the truth is that most of our government is corrupt and its not getting any better. Sure, its called politics as usual when senators get contracts for their home state and they get campaign contributions in return. But pretending that is somehow different than bribery doesn’t make it any less harmful.

In the end, this movie reaffirmed rather than challeneged my core beliefs. It did shift my perspective on Bush, but it didn’t rule out my voting for him. It certainly didn’t make me any more likely to vote for Kerry, even though an old lady wearing a Kerry for President pin tried to get me to register to vote (I am already registered). But it still seems clear to me that the government which governs least governs best. Government started the War in Iraq for a number of legitimate and probably a number of illegitmate reasons as well. But government also supplied and supported Hussein and Bin Laden in the first place. Imagine the lives and money that could have been put to better use had government just stayed out of it all.

Vote freedom first.

Peace.

Spreading the good news of Firefox

As most of you probably know, I now almost exclusively use Firefox to browse the web. However, Microsoft’s Internet Explorer still holds a vast majority of the browser marketshare. The good news is that this market share is dropping – and Mozilla in its various forms are picking up the slack. While users of IE still outnumber users of Mozilla 7 to 1, the trend is in the right direction.

Yesterday, I helped continue that trend. During a meeting at work with a vendor we work with, the topic of Microsoft came up, and, inevitably, the various security holes in Microsoft products. This gave me a perfect opportunity to introduce Firefox, which the people we were meeting with took immediate interest in. I think I gained at least one convert right there, and the others were certainly considering giving Firefox a chance.

As the convert said, open source certainly is a model that creates very good code. Implied, of course, is that open source often doesn’t provide exactly what you want. However, when what it does provide coincides with what you need (think servers and browsers these days), its hard to go wrong going with the less expensive, more robust, and more secure open source solution.