From Interlock Rochester Wiki
Just graduated from University of Rochester in May, 2010 after a rather long (12 year) college experience during which time I was also working. (No I am not a PhD or MD)
I need to organize this better. Despite the amount, I hope this is mostly relevant as I have a lot of technical/nerd interests (I am a tinkerer and more of a jack of all computer/EE trades master of a few) than any kind of domain expert (I sometimes cogitate about the merits and demerits of this, but I ultimately probably won't change).
Potential hackerspace assets
Certain skills right now that may be useful for hackerspace improvement activities
- Proto hardware repair, troubleshooting, and production including basic SMT rework
- Hardware/circuit mixed-signal design (not so much on modern RF though)
- Hardware design in VHDL and Verilog for FPGAs
- Embedded MCU software design in ASM (PIC and AVR), and ARM, and MIPS
- Embedded Linux and BSD builds and projects
- Desktop and utility application development
- System level programming (drivers, etc) on Windows (yup), Linux, and FreeBSD
- Basic Woodworking/cabinetry and carpentry
- Amateur Extra/VE - can do testing and training
- The practice of residential and small commercial electrical work
- Plumbing and pipe-fitting (water and air)
- Basic sysadmin stuff
- Web Development
- Enjoy working with others on a common goal and working through challenges and conflicts (sincerely)
What I would like to learn/work on/help with/fail at
- Metalworking, tool machining/production
- Design and aesthetics in various mediums
- Brush up on TL theory
- Specialized community building
If I don't know something, chances are I am very interested in at least hearing about it.
- Very pleased that I could be available to talk about UNIX hacking at the Linux workshop last weekend to someone that was interested. I'm excited to find out what I can do at the hackerspace.
- Implementing better barcoding (auto-id) libraries for opensource (probably BSD licensed). Already got a partial implementation working (in Python) of an provably "ideal" data encoder for 2D matrix codes (like Aztec, DataMatrix, and QR). I have not found something similar in the open source world. This involves a very interesting formal algorithm with proof for finding the shortest sequence in generating data stream in a multi-state encoding system.
- I'm doing an asset tracking and budgeting framework for my own use, but I have had to write a bunch of packages that may be useful to the general python dev population (things like API access to isbndb.com and data processing)
- Upgrading my Ham equipment to get back into it. Assembling some data cables.
- Brushing up on my VHDL so I can talk intelligently to future prospects in the EE field
- Learning about the next update to C# and .NET: 4.0 -- I highly recommend C# 4.0 in a Nutshell, I couldn't stand any others that may as well be published "for Dummies"
As a relative newcomer to the Rochester hackerspace and not having been a member of a similar organization previously, I am still figuring out what kinds of things would be interesting and community building. Right now I am mostly using it as a place to meet with local people with similar technical interests and an alternative venue from the home office.
In addition to my current pet technical projects, I would like to see the hackerspace thrive and I am anxious to discuss what kinds of things may work and add them to my TODO list.
Note: I am an Extra and a VE affiliated with W5YI-VEC (which is unfortunately the "wrong" one in these parts). I can apply for Laurel, and possibly get some licensing/exam stuff going at the space. The other alternative is that we get a couple other eligible members or other operators to become W5YI listed and I would not mind being a CVE (paper pusher).
I was surprised and pleased that there is a burgeoning interest in Ham Radio here. I had sort of gotten out of it even though I am a licensed Ham, since 1992, and upgraded to Extra a few years after that.
Currently I am buying some mobile antennas and replacement batteries for my very decent equipment that has been sitting on the shelf for some time
- Kenwood TH-D7 - awesome dualbander with APRS and general AX.25 features
- Icom W32A - A nice upgrade from the following:
- Icom W2A - My first HT (a dualband) it was an engineering marvel in its day, and would still be useful
- Icom IC-736 - This is my main HF+6M allmode rig. I am not huge on HF (not due to lack of interest)
- Yaesu quad band mobile - 10M FM is a bit of a gimmick, but this is still a very nice radio
- I started operating under the "coaching" of KB2ERJ at age 8. I don't think I was very competent or too helpful to the contest (I unfortunately can't remember), but it was fun.
- In 2006 I ran a 3A field day station at a local ski lodge, mostly attended by highschoolers with a radio club. Granted, a (1x3) N2PMP is not the best for a fully scored entry (but there were no other club or Extra calls available), but we had fun and PSK-31 contacts are worth as much as CW. W2CM graciously loaned his FD equipment since he was not operating that year.
Sorry this looks like a work inventory, it isn't. These are all things I am interested in for fun. There are fully legitimate hackers that find programming (software or hardware) tedious (and don't do it, or grin and bear), but I am simply not one of them, I love it and I like talking to others about new and better ideas.
I put a large description of projects and crap here in case any one else is interested in talking about particular things. I really need to flesh out some the stuff into my own website, someday.
- C and Assembly at levels from 8-bit micros to 64-bit commodity for both general and specialized app. I probably am pretty good at language lawyering on C. Again that is C, forget about C++ (unless I have the spec in front of me).
- Emphasis on 32-bit SoC (ARM, MIPS, etc) doing high level app code, system programming, and performance algorithm development in assembly.
- Experience with electrical and software considerations for numerous 8-bit MPU/MCU products including Microchip's line, Atmel, Freescale (68HCx, Dragonball)
- Experience with many of the interconnect techs de jour (USB, I2C, CAN, Ethernet)
- Experience with high speed digital design and electronic manufacturing workflow, PCB layout
- In the real world I used OrCAD.
- In my world I have successfully gotten gEDA and gschem to do my bidding and thoroughly enjoyed putting together a CIS hack for some of my own and school projects
- Expertise in digital SoC design and hardware IP implementation (FPGA projects for instance)
For everyday development projects:
- pylons - Python web app/service framework
- SQLAlchemy - An ORM that sucks less and made by those that have some clue about the fundamentals of RDBs and why they are valuable.
- PostgreSQL - best open source/free SQL server, hands down, I'm pretty sure
Open source work
-  - still technically a maintainer on this mostly defunct project. Contributed implementations to some parts of the spec: Any support, C++ code generator development.
When I was young and stupid, CORBA seemed like a well thought out idea (as it turned out, it was a little too much thinking) and it was a core technology for the "future" of the GNOME Desktop.
- Linux kernel - Have done a few janitorial fixes (race conditions, etc) in drivers, backported some drivers, contributed support for the Intersil prism WLAN chipset SSF.
- uboot - Pretty much did the initial Intel PXA support and this was put in the tree. Implemented a number of graphics features and implemented and got a <5 second boot back in 2002 for an inhouse company project by implementing basic MMU support and LZO decompression features, unfortunately this did not get submitted.
- pygtk - Did documentation/FAQ stuff, distributed extension modules to help pygtk development on Windows
Open source interests
I personally endorse all these projects as worthy endeavors for the curious to get involved in.
- org-mode I've used emacs practically since coming from the womb, but now it is essentially ingrained in my day to day life.
- gEDA - Great community and developers. I heavily considered doing GSoC this year for a CIS implementation but economically it wouldn't pan out
- MAME - Historic hardware is awesome and emulation of said hardware is as well.
- LLVM and clang - I started on a project for a backend for an embedded MCU (there is an ongoing project for PIC16s, so this is not as crazy as you think), but its on my MAYBE list at this point.
- qemu - I am still more interested in this for the general system emulation and its cool code generator (TCG) facilities than for virtualization
I used this to do a weird hack: A captiventfs like thing, but instead for ARM-based Windows CE in order to get access to an Intel proprietary Flash filesystem driver exclusively for CE. This involved some weird stuff:
- Implementing a full featured Strataflash device in qemu
- Writing parts of the Windows CE API (coredll.dll) that the driver library depended on (like WINE)
- Writing a simple PE file loader with support for ARM binaries and the ability to resolve library relocs into a DLL loaded into the qemu "harness"
- Writing an IPC system to make cross process calls into the qemu application and hacking the qemu program to break into the emulator to make "library" calls and return results from the emulator memory/stack space.
This worked, the emulated flash space would end up with a formatted filesystem, but this technique may have ended up being harder than finishing the reverse engineering study of the filesystem structure itself. But in the end, the industry realized that NOR flash sucks for this application and was a silly ploy by Intel, and the need for this particular thing is gone. I wonder if it has any general use.
- zint Barcode Gen - Despite a few flaws in matrix code generation (patchtime!), this seems like a great starting point and an awesome effort from Robin Stuart.
- MusicBrainz - The site and the infrastructure (software).
- rockbox - Embedded ARM is something I slaved away at for years, but I never seem to get the time to contribute to this great project.
- GTK+ - Not a perfect ecosystem, but a nice ball of mud to play with.
- IronPython - Hey it might be "from" Microsoft, but core CLR and IL are not so bad.
- SDL - One of the nicer open source communities and a very useful library.
Other research interests
- Steganography and specifically steganography in executable code (either hard instructions or interpreted bytecode), especially non-x86, since this is the usual focus
- Computer architecture simulation/emulation
- Image processing and applications for machine vision and AutoID, especially on resource constrained systems
- Signal processing in general both analog and digital
- Squeezing performance/Algorithm development and implementation on relatively resource limited hardware (today these would be things like ARM/MIPS SoCs, even PICs and Atmel AVRs)
- BSEE University of Rochester, May 2010 - specializing in economics and computer organization (architecture)
- 8 years experience working in engineering and OEM customer support for a major manufacturer that was bought out by megacorp Honeywell. The original company was one of the best places one could ask for.
I need to either hire an editor, or something