jump to navigation

My coding is completed January 11, 2012

Posted by hunterp in Uncategorized.
4 comments

I just spent 9 months launching the Android version of SoundTracking. This is the best piece of code I have ever written. It is not perfect, by any means, but I was challenged to the max and this brought out the best in me. The reason I am leaving the project is very simple, I live in NYC, and the team is in SF, and I believe it is better for me and for them to find a local Android dev.

I have spent the better part of the last 10 years writing computer code. My goal for the future is to write less code and focus on my interpersonal skills and to be more involved in builds of physical products.

Some things I’ve learned along the way:

Code is the result of your ability to collaborate. The more efficiently you collaborate with your teammates, the less code you have to write. Younger programmers will not understand this, most of them (including myself) believe they can brute force code through any problem, but please try to avoid this. If you have no teammates: get them. No man or woman is an island.

Release as often as possible. Release every day if you can: this will force your teammates to collaborate with you, don’t let them bully you into releasing less often, their anti-social tendencies must be fought against with every tool you have ( charisma, charm, honesty, honor, building rapport, being in their face, and even bribery such as with beer, lunch, etc).

As an entrepreneur, the same still applies. Instead of writing code, first go through the following checklist:

  1. Have you vetted the idea with any other human being (overcoming the incorrect fear of releasing an idea, and overcoming the incorrect trajectory of the solo-preneur).
  2. If you have no one for step 1, visit co-working spaces, bars and work on your social skills so that you can make step 1 happen (this could take a few years, and will be well worth it)
  3. Have you met a graphic designer?
  4. Have you met a co-founder?
Navigate by your intuition more. Google Maps is not intuition. Yelp is not intuition. Try shutting off your digital devices for a while and see where you want to go. Just like Luke Skywalker stopped looking at his faulty on screen display and “used the force”.

As a career, coding is a means to an end. Every few years, paradigms shift: the desktop computing bubble was followed by the internet bubble, and now we are in the mobile bubble (the next bubble will be robotics / 3d printing ). Another example: perl -> php -> ruby as the easiest language to code websites in. You really have no hope of keeping up with the constant paradigm shifts. Younger programmers will latch on to the newest trends and make you obsolete. You cannot always stay on top of every new language/skill-set, nor are you expected to. Your best bet is to get out of coding and into management or into entrepreneurship as soon as possible.

Do other work besides coding: try working as a cook in a kitchen, as a waiter. Try doing something that directly pays you money because of your ability to interact with other humans, not your ability to interact with a turing machine (moving into product management counts). Try building things with your hands, working with wood, soldering metal. Learn how to dance with a partner (instant ROI!).

With that. It is on to new ventures!  And if you are an Android Dev, hit up the guys behind SoundTracking: Schematic Labs, you just might have a phone call from me to see if you have what it takes!

State of affairs, 2010. September 29, 2010

Posted by hunterp in Uncategorized.
1 comment so far
I consider myself a student of history, and a engineer of the future. One of the most insightful descriptions of computers came to me by way of an 80+ year old WW2 veteran whom I happened to meet one morning and asked him for directions. He said that computers “were there to replicate human action”. Think about it abstractly if you can, and you will see that his statement is practically as true as a mathematic axiom. Writing? Computers have
helped spread knowledge to the ends of globe: Wikipedia for example. There are even societies in the 21st century that still lack written langauge, yet computers are assisting even these people to develop their own means
of archiving the events of the day. Imagine that, completely missing the age of writing, and diving headfirst into the age of the internet….
Now think of the inverse of his statement, if computers are here to replicate human action, what do they fail to do?
They suck at making friends. Facebook has definitely revolutionalized some aspect of human existence, but you still need to meet facebook friends face to face numerous times for them to actually be a friend of any meaning, and most facebook friendships don’t result in much facetime. Then there are “dating” websites, which are no where near as popular as facebook, and have results that are 99% dissapointing. As far as meeting people, I vastly prefer meeting and dating people through real-life friends.
Computers are terrible at making energy. In fact, most versions of the internet consume massive amounts of energy. Global warming? Try turning off the internet, you’ll save more greenhouse gas than all the corn fed,
anti-biotic injected cows farting for a year don’t quote me on that one), but you get my point. If in some dream-scenario, the “magic” of legislation deemed that the internet could be powered solely by sustainable energy, then it would different, and better.
Next….warfare. Well, we now have drone planes. These have given a military “advantage” because certain jobs no longer need to be risked to human life. However, this is a hands off kind of war. And I believe that nothing replaces being a human on the battlefield instead of being a remote control operator of a war machine.
How else are these electronic soldiers going to hear the screams of civilians they might be bombing? The laws of war are as old as civilization: settle your differences, don’t kill the women, children and civilians, fight with honor, and when the dust clears, the survivors realize how stupid they just were and make a truce.
Lots of fiction, and tv shows point to the idea that machines will one day rise up against a less intelligent human race. However, I think these e-doomsday scenarios are more upon us than you might think. United States President Eisenhower said after World War 2, to beware the military industrial complex. Unfortunately, the gears of war have ground on year after year, and have embraced fully the technological edge the today’s brighest minds can provide.
Well, the wars of the 2nd millenia have so far been about oil. Let’s hope that 2020 will see an unprecedented amount of sustainable power. Imagine that, free energy….If the internet could help free up the energy of the planet, then it will have succeeded providing us the one thing that seems to start all kinds of war….power, pun intended. The internet also succeeds in allowing those of us who pursue life, liberty, and happyness to have a glimmer of hope that other people that care about life, liberty and happyness actually exist out there regardless of which border they are behind.
One thing computers have accomplished that was impossible before is that information is crossing borders,both ways, faster than ever before, it has redefined what a border on the map even means. When seriously heinous things happen, the whole world tends to know about it practically instantly.
With computers, there is the serious potential to abstract all humanity away from some human task, most importantly in the ways of warfare, But there is also tremendous potential to share knowledge. Specifically, the kind of knowledge that will ensure that the world becomes more peaceful than ever before. I believe Eisenhower would still make his exact same speech today. And I believe that the wars of today are fought with very little honor and are increasingly becoming less honorable. I would like to see a world of peace. And I believe one way to get there is to work on reducing the reasons for going to war.

Custom ListView Colors in Android December 22, 2009

Posted by hunterp in Uncategorized.
1 comment so far

Hey. This is the easiest way to get custom colors onto a list. Basically, if the list entry is greater than 2, it will have a\

different color. The algorithm can be whatever you choose.

ListView fileList = (ListView)findViewById(R.id.list);

final String whatever[] = {“1″,”2″,”3″,”4″,”5″};

fileList.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,rev) {

public View getView(int position, View convertView, ViewGroup parent) {

View v = layoutInflater.inflate(android.R.layout.simple_list_item_1,null);

TextView i = (TextView)v.findViewById(android.R.id.text1);

i.setText(whatever[position].toString());

i.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.WRAP_CONTENT,

LayoutParams.WRAP_CONTENT));

i.setBackgroundColor(Integer.parseInt(whatever[position]) > 2 ? Color.BLACK : Color.rgb(0xFF, 0xA5, 0×00));

return i;

}

Big internet companies go down at reasonable hours December 16, 2008

Posted by hunterp in software, Work.
add a comment

I value my free time far more than my employer does. I fought really hard to get our nighttime maintenance window down from 9:30-10 to 8pm.

And low and behold, I find that Linkedin gets to do maintenance at 6 pm. If linked-in gets to do maintenance at 6 pm…..then so should we all.

linkdown

Cross Cultural Rhythmic fertilization. June 3, 2008

Posted by hunterp in Uncategorized.
add a comment

I’ve always been interested in Indian music. I think my fascination was renewed after I was present at this recording of the Sama Duo in New Mexico . I’m actually listening to the recording as I write this.

So, a few weekends ago, I went to a Himilayan Festival on a bright sunny weekend. It was in a slopey park in Berkeley with a stream running through it, and an island in the middle. Food: on one side of the stream; a stage with ongoing live performances and stores: on the other.

In the middle of the stream, there was an island with a huge pot of chai boiling, and a community table. There were also some drums. I sat down with one and listened.

I listened to…and then played a lot of himilayan (tibetan/indian/nepalese/bhutanese). There was a singing And drumming. The atmosphere changed for the interesting when this character of a guy….who was slightly tone deaf…. sang Bollywood songs to the drumming. But I give him an A for effort and acting.

Well. That’s all for now. I leave you with this picture of a Himilayan cat.

Google Spreadsheets Still slow May 30, 2008

Posted by hunterp in Uncategorized.
3 comments

About a year ago (or whenever google spreadsheets came out), I tried to upload a huge excell file.

It choked.

Today, theres an Offline mode for Google Docs which relies on Gears. I installed this, and was at least able to upload a 700k (10,000 row) spreadsheet…but the thing still chokes terribly when I try and sort the rows.

Google docs has great promise in helping documents become living, authoritative, versioned, searchable, and shareable..but it failed for me today. So I’m still stuck in the dark ages.

User Experience equals… May 29, 2008

Posted by hunterp in Uncategorized.
Tags:
add a comment

( 1 / number of clicks ) + no unwanted data loss + meaningful features no matter how long they take to execute ( 5 minutes or .5 seconds).

Now, the question is….over which of these dimensions do the top 100,000 money making websites differ.

Web 2.0 is a lot like 1994. May 29, 2008

Posted by hunterp in Uncategorized.
1 comment so far

I want to start off with a story.

I was on a website a few minutes ago, and I wrote something really prolific. So, I had spent 20 minutes writing , (drawn out over 2 hours). Well, when I go and hit the “post” button on the website (an alexa 1000) it  timed out….and when I re-logged in, my work was gone.

Luckily, I had backed up my data on google docs and all was well. But doesn’t this remind you of using a wordprocessor on a mac in 1994… either the mac would crash, or microsoft word would. And what did we all do….well we hit the save button (after every freaking sentance. (For those of you that have no frame of reference, i did that to save the file to hard disk). And I’m still really glad that those same tendencies of mine to back up my work that had originated in 1994 carried on until today.

And to put icing on the cake, the glorious google docs application itself, some how re-bolded some of this stuff that I saved, that I told it not to bold. Which is no where near as catastrophic user experience as the first foul one only the minute before.
Now…the ways that this is different than 1994 are too numerous to mention. Things such as open source, zero conf (eg…the web), cool programming languages that are fast enough to scale into production, garbage collection, distributed source control (eg bazaar), centralized-optimistic-offline-locking source control (eg svn), blogs about distributed source control (http://versioncontrolblog.com/)

But in some ways things are same….ajax…which has spawned a lot of this browser innovation is simply a re-do of the client-server model which is a concept that was achieving GUI maturity in 1994.

In other ways it isnt. Instead of Apple vs. Microsoft. Its Apple vs. Microsoft vs. Google vs. Amazon vs. Yahoo vs. Ebay vs. rupert murdoch (Myspace/Fox News) vs. Facebook and so on.

web1.0 social sillyness. May 17, 2008

Posted by hunterp in Uncategorized.
Tags:
add a comment

Back in the web 1.0 days, while I was still quite literally in love with programming, there was an online version of win-lose-or draw called Yahoo Graffiti . I wrote a program in Java that read in a gif, and coded it out into mouse movements. So basically, I would go into the graffiti room, and run my program and it would draw things as if I had some magical robot hooked up to my mouse. Drove people wild :-)

A new ajax version of this is available at http://xsketch.com I’m almost inspired to resurrect the bot. But its probably on a dead hard drive at my dad’s house, or only existing in wetware

Lazyness is a good trait in programmers. May 13, 2008

Posted by hunterp in Uncategorized.
add a comment

I just thought up a new interview question:

“Why is it good if programmers are lazy?”

Lazy programmers tend to fix problems and not symptoms. They also tend to write scripts instead of repetitively do things. I would  think that its laziness that causes programmers to write the least amount of code to solve a problem. The less code, the less there is to maintain, and the more healthy a project is.

Follow

Get every new post delivered to your Inbox.