The lows are low, but the highs are home

Month
Filter by post type
All posts

Text
Photo
Quote
Link
Chat
Audio
Video
Ask

January 2012

Jan 30, 2012 18 notes
#anime
net slum: Coding skill and the decline of stagnationvael.tumblr.com

notch:

I am a decent programmer. I know a decent amount of computer science theory, I can type correct code fairly easy. I don’t let my classes expand too much. But I still struggle some with math, and I have a tendency to have too many cross-dependencies in my code.

I used to think I was…

I’ve been learning more and more about what a compiler actually does lately, as well as looking at some very basic levels of assembly. So maybe I can shed a little bit of light on why things are the way they are. That doesn’t mean you have to like it! But at least it will make a bit more sense.

You write your source code, you give it to the compiler, and it makes sure you’ve given it code that will actually run. Then it creates highly-optimized code to be run by your specific processor, in assembly or machine code or whatever. The catch here is that processors don’t always work the same way, so the compiled code is limited to whatever platform it was originally compiled for. As a side note, I would think that’s why you pretty much only see source code available as a download for Linux programs (on the web, anyway) - you’d need to compile it for your specific distribution to make sure it works properly.

It doesn’t have to be like that, though - for example, Java (traditionally) achieves its multi-platform status by compiling its code for the Java Virtual Machine to run however needed on the platform it’s deployed to. Unfortunately, that means forgoing most of the optimization done by a regular compiler. Enter the Just-In-Time compiler, which takes the same Java bytecode as the JVM would. Instead of acting as a middleman, it compiles the bytecode into platform specific machine code (with, I assume, appropriate optimization) at runtime. Sadly, most of the time I see “JIT Compiler” listed as an option in an Android app, it tends to have a huge warning attached (“this will either be really fast or break everything, depending on your phone”). So I guess it’s a work-in-progress.

Anyway, so that’s why you have platforms and code that won’t run anywhere. And, while I’m no expert, I’d say that’s probably how web browsers manage to achieve some semblance of standard-ness. If I’m right, the browser would be kind of a middleman for your code the same way the JVM or a JIT compiler are for Java bytecode. Honestly, you’re the web developer - you tell me how browsers work!

Jan 13, 2012 785 notes
#programming
2011 recap

I went through my archive and picked out the posts that I think are most essential to my life in 2011, and the complete list is below. They’re all tagged recap, alongside the posts from 2010. I wouldn’t say they’re the most well-written, or the most interesting, of my posts from 2011. I wouldn’t even say they’re worth your time to go back and read. It’s just a bunch of bullshit I wrote about myself, really. But if someone wanted the quick version of my life in 2011, this would be it. You can probably extrapolate from what I wrote about not being perfectly efficient in my work to the fact that I haven’t been writing as much. I don’t have much to say about these posts that I haven’t already said in my 2011 In Review post (last item on the list), so go read that. Otherwise, I stand by what I wrote as a representation of me at that point in time.

  • My name in shining lights (in which I become part of the Language and Brain Lab)
  • I’m STILL not good at managing my time/forcing myself to work
  • In which a banquet forced me to confront my introversion
  • In the meantime, take these pills
  • Morality of used games (is buying a game used as bad as downloading it? probably)
  • You have [3] games remaining (where I reveal my quest to finish every Final Fantasy game - current status: 50% finished with FF VI)
  • Username Origin Stories
  • Old Friend, New Roommate (I’m still happy about the decision, for the same reasons I mention here)
  • Improve the world, and be happy! (in which I become satisfied with my life)
  • Catherine & Me
  • Catherine Pt 2: Love Should Be Selfless
  • The Catherine & Cheating Saga, Pt 3
  • How I Got My Android Phone (it was a big deal to me, jeez)
  • Not Antisocial, Just Shy
  • Hey Matt, Whatcha Up To (but mainly the anxiety stuff)
  • Too Busy Planning for Later, To Think About Right Now
  • 2011 in review

Oh, one thing that might be notable: there’s a lot of stuff I wanted to write about this year, but felt like I didn’t have the time. Looking through my archive, a pretty common theme is “I did have a better post, but take this for now” or “I’ve got great stuff coming, just you wait!!!” and none of it ever materialized. That sucks, but it is what it is. Again, I’m not totally sure it’ll get better. But I’ve got at least a dozen drafts waiting in the wings, and hopefully I’ll put the finishing touches on some of those. I may write a post about my plans for 2012, but whether or not I post it will depend on how boring it is. If it’s not up in a few days, then 2012 is probably just going to be more of the same.

Jan 1, 2012
Next page →
20162017
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201520162017
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201420152016
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201320142015
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201220132014
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201120122013
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201020112012
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
20102011
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December