Friday, April 11, 2014

The Event Horizon of Human Knowledge

Watching some new TV show about what we know about the universe, and it got me thinking:  the more we know about science, the longer it takes each new person to go to school and re-learn the the things that humanity has already discovered before he can go off and add something new to the pile.  It is possible that one day we will have accumulated so much knowledge that individual people can no longer learn enough in there lifetime before making their own contribution?

If such a horizon exists, it is probably far in the future, because of the enormous disparity between how long it takes to discover something, and how long it takes to learn it with the right teaching aids (e.g. how many PHD-hours did it take for general relativity vs how long for a student to learn it, especially since all students can learn in parallel?

One obvious solution that we already employ is specialization.  Neurosurgeon vs denstist, etc.

Also, my premise could be wrong.

Also, advances in medical technology could result in us living longer, sufficient enough to keep pace with our own body of knowledge.

It might make an interesting Sci Fi plot though.

Thursday, April 10, 2014

[coding] The Entire Java Community vs URL Encoding

I am broadcasting this because it is hilarious and sad.  Try this:  pretend you have a fragment of a URL...i.e. the query string, and you need the query string encoded.  Also, there is this thing called "url encoding" that is done with an html form.......and that's a different algorithm.  You want url encoding ... not  ... url encoding.

There must be a standard (i.e. NOT spring), not-deprecated java library somewhere that provides a static encoding method...right?

Sunday, April 6, 2014

Day 54

Today was a good coding day.  Yesterday I hardly got any work done, however today I got so much work done that I sort of caught up to where I hoped to be.  Why did I do so much better today?  It wasn't extra caffeine:  I only had one soda, two coffees and one energy drink all day.  Trust me, that is significantly below average.  My hands aren't even shaking.  Although I have accidentally stayed up until 5 am.

So.  If it wasn't the caffeine, why did I get more work done today, especially after a morale-busting 3 day slump?  The only noticeable things I changed are:
  • no TV
  • no errands beyond food/coffee runs (no bicycling, going to the store, hanging with friends, nothing) 
  • no music

The lack of music element is interesting.  Normally, I play Epic Music.  And by Epic, I mean that literally.  Like most of the songs are from soundtracks for movie trailers and, well, movies.  For example one of them was used as background music in an episode of Top Gear that features a fighter jet chasing super cars.  The artist that makes the bulk of the stuff I like is called Two Steps from Hell.  Its the only music that does justice to the magic I work with a keyboard, and unfortunately, I've listened to it so often, over and over again, that it is ruining my concentration.  All 20 hours of it.  I've heard of people having trouble concentrating while listening to music.  The lack of words was supposed to mitigate that.  It would seem, though, that listening to the songs until I am sick of them is also distracting.  Or, perhaps, listening to any music at all is distracting.

Today?  Mostly silence.  And I got a shit ton of work done.  I suppose I will experiment with Silence some more.  Actual silence though, as opposed to the hit single Silence by Delirium which is basically the best song every created by humans.

I would be happy to share my playlist, but I don't want to post the link in such a public place;  still scared from having YouTube ask me over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and over and wait did it stop? no...and over and over and over and over and over and over and over and over again if I want to use my real name.

Anyway.

The lack of TV...this one is also perplexing.  I thought I had some good experiences with TV shows and/or movies giving my mind a break, allowing me to return to coding faster.  However, watching TV may also harm my attention span, making it harder to maintain concentration.  So it could possibly be providing short term gains at the cost of a medium term detriment.  I don't know.  Shit, man, I was supposed to be in San Francisco this weekend...forgot to buy a plane ticket until the day before though, and then they were too expensive.

Anyway.

Time evaporates beneath my feet, like sand in an hourglass.  It feels like I just returned from my trip to New York City a few days ago, however according to my Wall of Progress, where I write down my daily accomplishments, its been nearly thirty days since I got back:




I don't quite have as much to show for it as I'd like.  That scary blue post-it note on the right is the physical position of the notecard I'll be placing after the last day I am able to work on the project.  Which...is actually right about the time I'll have to take all that down and move out.

The loneliness is kind of driving me crazy.  However, at the rate that I perceive the passage of time these days...this entire adventure is going to be over in the blink of an eye.

Tuesday, April 1, 2014

A Confession

I've spent a long time thinking about it, and I'm going to have to just come out and say it.  Some of you may have suspected.  The clues were all there or whatever.  Like my joke about how I identify as a woman on Wednesdays.  Its not just Wednesdays, guys.  Its every day.  I've known, and hid this, my whole life...ever since I volunteered to play barbies with my sister because she had a barbie van that could transform into a house (growing up we had neither cable tv, nor any transformers toys).  But it just felt so right.  Ever since then I've selectively believed or discounted all evidence based on whether or not it supports the conclusion that I already know to be true.

I can't live my life as a man anymore.  I'm going to start taking hormones and get my balls cut off.  The next time you see me I'll be wearing a dress, and I'll be super insecure about myself and I expect everyone to play along with me being a woman.  I still only like girls though, so I'm a lesbian, which makes it totally ok with me not wanting to dance with, or really touch, other men, and I can finally get away with it.

Wow that's a load off my chest.  I am so happy to finally be free.  I'm afraid this entire blog has been a total sham, a failed experiment in being someone I'm not.  In fact, as a feminist, the content here is repulsive, and obviously all of you are automatically racist, sexist misogynists for reading it.  This will be my last post.  If you are a tolerant, fat positive atheist with all of the right political views you may continue to follow the exciting adventure that is my life on my new tumblr, PlasticDiamondsAndLipSyncing.  To the rest of you shitlords, I say, fuck off.

p.s. I actually an otherkin.  I identify as a fox.

Thursday, March 27, 2014

Day 43 of 74 (Previously 84)

By calendar time, this little coding adventure is more than half over.  That is largely because of my trip to NYC.  The trip itself, plus all of the personal errands I had to do before and afterwards, cost me  14 days.  Worth it, I supposed, since I did manage to find a place to live.  On the tail end of this thing, I've calculated that I will probably lose 10 days to the move, since I didn't take that account when I came up with my estimated amount of time.

Work continues to go slower than I'd like.  When I first began this I thought I had a real shot of getting this feature complete in 84 days.  I...under estimated the amount of work.  By a long shot.

Now, as far as my performance goes, I have noticed the following two things provide the most benefit, by far:

1.  caffeine
2.  not working on the stupid fucking database


Caffeine is an incredible, performance enhancing drug for the programmer.  It's not good for you...not in the amounts that I'm using.  But it sure as hell gets me going.  I can plow right through distractions, tangential but pre-requisite tasks, tech debt, design decisions...anything.  The obvious downside are there, of course...tachycardia, sleep impairment, nighttime and daytime teeth grinding, a sort of global jittery feeling and the sugar is sabatoging my efforts to get in shape.  However...the amount of work I can get done makes it worth it in the short run.

Not working on the stupid fucking database...I don't know what happened.  All of the sudden, I just can't stand dealing with relational databases.  There's nothing inherently wrong with them--when you have a relational problem you need a relational storage layer--but I just don't like them.  Everything is a giant fucking chore.  You have to mess with the schema.  You have to--sometimes--create a stored procedure to protected the schema.  You have to use a database access library in your language of choice, and database access layers are a fucking field day for people who enjoy over-designing things.  The greater majority of the times I stop work and start procrastinating are because I realized I have to deal with one of the database layers.

In other news, I sold my TV and while I did buy a ridiculously expensive projector, I haven't really felt like using it yet.  So possibly the lack of TV watching is also making me get more work done.

Also, I am currently vetting two more android coders.  I found them by posting a small teaser project to craigslist.  Learning from my experience last time, I chose not to reveal my personal expectations of what a programmer should be capable of, and left the price open ended.  I got about 20 responses, and two of them weren't idiots.

I haven't let them touch the main codebase yet, but I have had them prototype some of the features on the back log.  Given the cost of hiring other programmers, I am optimizing for highest efficiency (as opposed to getting as much done as possible).  So far it seems like the best thing they can do is track down tangents (e.g. go find an android QR code library that actually works and write test code) so that I don't get distracted from the heavy lifting.

I will probably let at least one of them start editing the main code base.  I'd like to see if he is capable of working on bugs/tech debt, and also writing unit/integration tests.  I feel like as soon as I have him touch the made codebase, though, I lose "bragging rights" to say I wrote the whole app myself.   However, a finished app makes money;  bragging rights do not make money.  And its not like my ego needs to be fed.

Saturday, March 22, 2014

[coding] The Time War, Part 2

The easiest fix is to change all SQL code from:

NOW()

to

UTC_TIMESTAMP()



and not even JDBC can fuck that up.

[coding] The Time War, or, Dream Host is a Piece of Shit

It has just come to my attention that Dream Host runs all of their mysql servers in Pacific Time.  On purpose.

I just wrote a 5 page blog entry about how retarded that is, and then realized that people who disagree with me on this are probably too irrational to be convinced.  So...I'm in the market for a new mysql provider.

I shouldn't have to even say this...in fact, no, I'm not going so say it.  Here is what we are going to do.  Go get a piece of paper and write down what time zone you think its acceptable for a server to run in.  Go ahead, I'll wait.






Ok, look at your piece of paper.  It should say UTC, also known colloquially as U to the mother fucking C, because it is the divine, the one and only acceptable time zone for a server on or near planet earth.  I will also accept GPS, and GMT, although calling it GMT might cause nearby nerds to correct you; do so at your own risk.  In fact, maybe you should think of UTC, GPS, and GMT as the holy trinity of time.  If you wrote anything else, get the fuck out of here, you heathen.  Throw your stupid ass time zone in the trash, stop reading my stupid ass blog, and stop clicking on posts that have "[coding]" in the title:  you temporal plebians can go hang out on stack overflow with the other dweebs.

I liked this blog better when I was telling sanitized versions of drunk escapades or whining about girls, but...dream host runs their servers in pacific time.  What the hell are people from the East Coast supposed to do?  They're going to see a time that doesn't match local time, and if they have any sense at all, they'll assume its UTC...but it won't be.  It will be this other time zone that isn't any more or less significant then their own.  Decades later they will gather their grandchildren around the campfile and tell the horror story of the "time zone from nowhere."  And daylight savings?  Lets not even go there.  I just have this unstoppable, inexplicable to tell someone.  Dream Host is not running UTC.  I can't not do it.  I think I might even tell people who aren't programmers.  When I walk into Chipotle for breakfast tomorrow the girl is going to ask me how my day is going and I'm just going to shake my head and say "well, last night I just found out that dream host runs their mysql servers in pacific time."

I'm just going to leave this here:


UTC







[Edit]
  • Hostgator runs their servers in CST  (WTF????? thats not even a coastal time zone!)
  • justhost.com is MST   (FUCKING HELL)
  • ipage.com is EST
  • bluehost.com is MST FUCK
  • hostmonster.com is...I forget but its not UTC because "we're in Utah."  Dumbasses
  • ixwebhosting.com is GMT-5 (which I believe is EST)
  •  hostmetro.com is CDT ...if that D stands for daylight I hope they all burn alive
  • fatcow.com is EST
And the worst thing is the sales people kept telling me where their servers were located.  "Its because our servers are in Boston."  Who gives a fuck where your servers are?

 Maybe I should just find a hosting server run from the UK so it will be in the right time zone by accident.  Except with my luck they will observe daylight savings time.