Archive for the ‘Doing’ Category

history meme

Monday, April 14th, 2008

I picked this up from Stephen Lau on Planet OpenSolaris, though he traces it back to Planets Mozilla and Gnome.


heian:<<<hiroi/jauricchio$ uname -a
Darwin heian.local 9.2.2 Darwin Kernel Version 9.2.2: Tue Mar  4 21:23:43 PST 2008; root:xnu-1228.4.31~1/RELEASE_PPC Power Macintosh
heian:<<<hiroi/jauricchio$ history | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
95 svn
80 vi
70 make
59 cd
29 ls
18 ./build/neathat.app/Contents/MacOS/neathat
14 sudo
11 ssh
8 rm

It appears I’ve been doing a lot of CSE 125 lately. That accounts for the 18 runs of our debugging build, 95 subversion statuses, updates, and checkins, and 70 makes.

Xen and OpenVZ at the same time, and a Brief Rant about Filesystems

Tuesday, March 25th, 2008

After a grueling two days of kernel muckery, and much help from Mooneer and Mark Williamson (bless you, sir), I finally have a 2.6.24 kernel with OpenVZ and Xen domU. Things I learned along the way:

  1. Never ever make your generic server in the closet do double-duty as your internet gateway/router. For one thing, internet access is a valuable resource to help diagnose why the dang thing won’t boot. And for another, your roommates hate it when the network is down all day.
  2. Nobody should ever make kernel patches that start from vanilla (e.g., 2.6.24), add a large feature you can’t get anywhere else (e.g. OpenVZ), and along the way give you lots of unrelated things (e.g., 2.6.24.3). This breaks down the instant two people do it (e.g., Debian), because the unrelated things all conflict.
  3. The Xen merge into mainline is a good thing, but it’s only a start. I really want: ballooning, PCI sharing, and dom0 support.
  4. aptitude is actually a great thing. Anybody out there still using apt-get… change your habits. Just start using aptitude. And then, little by little, start figuring out the curses gui and how to mark packages as automatic and how to resolve conflicts and all the excellent stuff aptitude brings. I resisted at first… but it’s definitely worth it.
  5. Also debian, we really need etc-update.
  6. It’s very easy to use hilarious amounts of bandwidth when you’re building systems with debootstrap.
  7. I did something today that made my big domU extremely slow. It seems that under very heavy I/O it just grinds to a halt. I also had very constrained memory and no swap device. So I’m not sure if it just didn’t have space to cache and had to start kicking clean pages, or whether Xen event channel unnecessarily serializes I/O (I’m afraid that it does), or what. DTrace would be sweet.
  8. I need to get better discipline in system management. I’ve historically used cioppino (the Linux machine) for everything from serving web and subversion, to an irssi/shell server, to hosting my AVR cross-toolchain, to my (excessively convoluted but ultimately perfect for me) email hosting. I need to cut down on what I do with it, and I need to stop installing and building random things that seem neat. Apt makes it so easy, I know… but it becomes an N^2 problem. And I’m absolutely terrified by the number of upgrades aptitude offers… there’s just too much on this system.

Finally, a desperate plea: Can we please have a good cross-platform low-commitment network filesystem?

  • NFS is difficult to run safely, hard to expose to temporary untrusted users, and still might require shared UIDs (I think?). Sucks.
  • AFP hates symlinks and hardlinks within the shared area, and isn’t available for Windows. Sucks.
  • Coda and AFS require lots of setup and aren’t suited for “oh just connect to the server and grab it” use case, with temporary untrusted users. Sucks.
  • FTP blows.
  • sshfs requires Fuse which concerns me, and requires a shell-equivalent account on the machine. Sucks.
  • SMB is well-supported and cross-platform, and doesn’t specifically require an account on the machine. It’s pretty bad at non-FAT32 file properties, though. Permissions and symlinks ehhh sometimes work. Workable.
  • WebDAV just seems like a bad solution designed by committee. It kinda works.

Really. That’s it. SMB and WebDAV. This is sort of like the situation with disk filesystems… FAT32 or go home. The least common denominator that Windows supports just seems to win :(

My Workplace, in a Vignette

Thursday, November 8th, 2007

I work at The Dini Group, a small company in downtown La Jolla. We build FPGA boards (Xilinx and some Altera) to support logic emulation & ASIC prototyping.

Yesterday I was testing my third board design. It’s a revision of one of our older boards, generally cleaned up, and ready to go into a production environment for a contract client. The board has a security-related purpose, and it will store private keys. Consequently, one of the customer’s requirements was that to the extent possible there should be no unnecessary I/O paths, and still required paths should be disguised.

We use USB to bring up and configure the boards, but we couldn’t just put a USB plug. So instead we put in a four pin header like this one. V+, D-, D+, G, in a row.

Next challenge: We needed a cable to connect that to a computer. We could buy one for a few bucks… but Neal and I came up with a better idea.

  1. Get a USB A-to-A cable, the kind that aren’t supposed to exist. Dave had one in his drawer.
  2. Plug one side into the computer and the other side into one of the USB back-panel bracket that come with most motherboards these days. We have one in every dead computer in the Dungeon, and most folks didn’t bother installing them on our last batch of computer purchases.
  3. And those header blocks on the end of the bracket’s cable plug directly into the board header pins.

Cost: zero. Results: excellent! (Pics: soon.)

Yesterday we found ourselves in need of a second cable. This time I just took a six-foot A-to-B cable, snipped it near the B end, snipped the header block off a second bracket, and soldered the connections up. I think for version 3.0, I’ll use heatshrink instead of masking tape.

Homebrew USB cable, header end Homebrew USB cable, both ends Homebrew USB cable in use

This isn’t a particularly abnormal day.


A few more pictures of my desk:

  • Picture the First – Phone, sharpie, multimeter probe, tea cup, board under test, PCI extender to power DUT, Nalgene, keyboard for Linux machine under desk, Subway sandwich for afternoon, paper plate that used to have bagel, mouse for Linux computer, power supply for test, SMA cable, edge of main machine
  • Picture the Second – other side of main (WinXP) machine, solder sample boards, partly-assembled PSX board, post-it with a few part numbers scribbled on it, set of low-ohm resistors soldered in parallel from an old old power supply capacity test, ASUS motherboard box, some instrument that was on my desk the first day and I’ve never touched, Dave’s trashcan
  • Picture the Third – behind me: schematics, schematics, and more schematics, box with new hard drive for backup server (oops I need to install that), Gigabyte motherboard box, headphones, ethernet hub under desk, miscellaneous cbles (power, ethernet, usb, serial) along back of desk

Craziness Update

Thursday, January 11th, 2007

Current Courses (WI07)

  • CSE 131A Compiler Construction I with life-consumingly hard assignments
  • CSE 120 Principles of Operating Systems this one also
  • CSE 240A Principles of Computer Architecture graduate level!
  • CSE 240B Advanced Computer Architecture graduate! auditing
  • COGS 120 Human-Computer Interaction
  • JAPN 130B Third-Year Japanese
  • PSYC 1 i know, right? psych??? but it’s a GE. and Stuart Anstis is as amazingly cool a human being as I have ever seen from fifty feet

Looks like I’m going to Japan!

Thursday, January 4th, 2007
Welcome to myEAP On-Line Application

To change the specific program for an application that is in-progress you do not need to start a new application. Just
- Inform your Campus EAP Office of your change in plans; and,
- Change the country and the program in your existing application.

To apply to more than one EAP program, be sure to check with your Campus EAP Office for possible restrictions. For example, for programs that run at the same time, your EAP Office may require you to choose only one program before submitting your completed application. For programs that run consecutively (without any overlap), you will need to review the details and possible restrictions with your EAP Office.

Choose Application

Application for JAPAN – Science & Engineering in English – Japan Universities – ILP + Year – 2007-08 – SELECTED
Application for JAPAN – Science & Engineering – Japan Universities – Year – 2007-08 – SELECTED

On Going Home Again

Thursday, December 21st, 2006

Yesterday I drove up to the Bay Area, with a twofold purpose: To see Teresa, and to visit the places where I grew up.

I left at 7am and drove up Highway 1 to Carmel. 1 is a beautiful road, and I have a great time every time I drive it. I love driving on scenic winding roads; the more scenic and windier, the better. The road is so much better than my car: it’s a road worthy of a Lotus or Porsche or Ferrari. (Some day.) I made excellent time – an hour and forty minutes from the stoplight in Cambria to the stoplight in Carmel. Another hour and twenty put me at De Anza & Stevens Creek.

Louise Van Meter Elementary School is different; they’ve added a new driveway down what used to be the side of the field. The playground structures are all metal and plastic; back in my day we had wood and we got splinters, dammit! The field is so small. It’s about the size of Shamel Park, more squared-off. As a kid it seemed to take forever to run across it when that bell rang at the end of lunch.

Raymond J. Fisher Middle School is completely different; they’ve built a new administration building, with a gaudy facade of dark blue concrete and gleaming metal trim. Thanks, Dot-Com Bubble.

Los Gatos High still looks the same—big imposing quasi-Greek building with a big lawn. I’ve still never been inside.

What used to be Los Gatos Ferrari is now a Ferrari, Rolls-Royce, Bentley, Aston Martin, and Lotus dealership. They have a Veyron on order for December. On Santa Cruz Rd there’s a Lamborghini dealership. Thanks again, Dot-Com Bubble.

I drove up Tourney Road, to the old house. The road was grippingly familiar; I even remember the way the rain runoff flowed down the roadside and pooled up at certain spots. There’s a new baby-blue monstrosity of a house along the road that was simply not there when we left. I’m surprised there was actually space for another lot; things are very close-quarters along that road. The old house itself looks about the same. It’s had a paint job (it’s a much warmer, less neutral grey), and there are more plants around the decks. I was surprised at its sheer size; it was a big house. I didn’t go in, just paused for a moment and let my mind run through it, evoking every memory of my childhood in a huge flood.

On the way back down, I caught a glimpse through the trees of the view. The old house’s biggest selling point was its panoramic vista of the whole South Bay, from the Saratoga hills across to the Coast Range. In the rain, like yesterday, it’s not so impressive, but on a clear day you can see all the way up the bay, and in the afternoon sometimes you can make out the gold sun reflecting on the office buildings in San Francisco and Oakland. Million dollar view.

I miss the freeways in the bay area. At night, they’re so much darker than those of SoCal, and there’s nothing on either side but soundwall.

Northern California rain is different, too. A million tiny misty drops, the whole windshield is soaked, a certain cadence to the rain as it strikes, washing up the windshield from the wind, wipers only slightly helpful.

It’s only been eight years since I lived in the Bay Area, but it feels like a completely different lifetime. I was a different person then. I lived in Los Gatos for the first thirteen years of my life, but I grew up in Cambria, and I wouldn’t have it any other way.

Heed my Advice

Tuesday, December 19th, 2006

Do not let it slip to your girlfriend that you once did needlepoint & crossstitching (those most feminine of arts) back in like third grade. She will require that you make something for her. There is no arguing or escaping.

Paul: Cross-stitch is like analog pixel art. Except you get to draw between the pixels, too.

I’m crazy. Just plain crazy.

Thursday, December 14th, 2006

Current Courses (WI07)

  • CSE 131A Compiler Construction I with life-consumingly hard assignments
  • CSE 240A Principles of Computer Architecture graduate level!
  • CSE 240B Advanced Computer Architecture graduate! audit?
  • COGS 107B Systems Neuroscience
  • POLI 133A Japanese Politics: Developmental Perspective
  • JAPN 130B Third-Year Japanese audit
  • HILD 11 East Asia and the West audit

Ryan on difficulty settings

Friday, November 24th, 2006

Starting our inaugural game of Wii Golf
<Jeff> Expert!!
<Ryan> I would consider no other difficulty.

Elementary productivity theory

Monday, October 23rd, 2006

In the general case, percent of work completed is a logarithmic function of time spent.

When you start work, you get things done at a pretty good pace. Over time, you start to slow down. As the task approaches completion, you really slow down to accomplishing almost nothing.

This is a good approximation for time significantly less than the deadline. However, as the deadline approaches, the derivative increases rapidly, following the gamma function. Immediately before the deadline, work is accomplished at a nearly infinite rate.

As the deadline approaches, you work faster and faster to get it done; the last hour before the deadline is the most productive time known to man.

I have seen this pattern in almost everything I do, and I’ve been refining this theory over the past few months. I have further noticed that the pattern applies to most of the engineers I know. There are notable exceptions: some people cannot bear to leave things to the last minute, and get as much as possible done ahead of time.
These people are silly.

The next step would be harnessing my own pattern of productivity. False deadlines, drastically inflated requirements (to keep the early logarithmic rise going for a long time), and making that gamma function kick in earlier: all these will let me get more done.