You are here

software

iOS hardware limitations discourage long tail innovation

CSU recently hosted an iOS app development seminar with a couple apple representatives. One was clearly a sales guy, the other was the guy who spoke code.

It was interesting. I learned quite a bit about building a basic 'Hello World' application. In the end, the tech is no different than any other I've learned. (though objective-c syntax is a bit unusual compared to the other c based languages I've met.)

So, all that is fine, but I started to get a crappy feeling in my stomach when I asked this question:

If you can't open it, you don't own it... Apple closed it.

Apple finally cracked down on iphone hackers. So today's the day I feel justified in not buying one yet. They've released a fantastically powerful tool and hobbled it to be nothing more than a shiny toy.

As consumers we need to demand access to the software of systems we buy. Software being in the hands of everyone to modify is what gives it great power.

Google Reader Keyboard Shortcuts

I use google reader in an effort to more efficiently waste time every day. It's quite handy for RSS/news reading.

Every once in a while they change a feature here or there.. sometimes for the better, sometimes for the worse. The other day Scotty and I noticed that f5 no longer refreshed google reader.. instead it brought up a tagging box... and I noticed that If I hit f6, it'd make the left pane with the subscription list hide or show itself.

IE's CSS does letter-spacing stupidly

I know most of my readers (all 2 of you) will probably stare blankly at me over this topic, (I guess this is mostly for the search engines) but IE continues to piss me off, and I need to tell SOMEONE.

Today's problem is IE7's math, and their implementation of kerning. (having wiki'd that, I see I may be talking about tracking, but who cares.)

In css, you use a parameter called letter-spacing to change kerning on things. As with all other css, you can specify the units you want to use as pixels, points, percentages, or em. (there are others.)

An em is essentially the width of a standard 'M' character in your font of choice. For IE's mathematical purposes, it's a percentage of the font size you specified elsewhere.

So if I have a font-size: 12px; for my entire document. I can make my headers: font-size: 1.5em; and they will be displayed 150% of 12px. (18px)

So.. an example.

i'm letter-spacing of 1 em

if you're using any recent browser, that should look all spready...

Now.. I rarely need massive letter spacing like that... (though it does come up.) More often than not, I get handed a nice layout from a pro graphic designer that has text in it that is crammed together, ever so slightly, but it really does change the look of certain things.

in IE.. the best you can do for 'ever so slightly' is this:

i'm letter-spacing of -0.05 em... the quick brown fox.. yadda yadda
i'm letter-spacing of -0.00 em... the quick brown fox.. yadda yadda

that's not so bad in trebuchet or whatever the hell i'm using here, but in an italic serif font, it looks pretty tight. Now, IE can take any unit ABOVE .05.. (or 5%).. which.. in negative kerning terms.. isn't too useful.. but I sleep well at night knowing that I can always choose to do something like:

DRM Free Itunes Tracks contain water marking. Not a bad idea.

The EFF is digging into what hidden data is contained in the new DRM free tracks in Itunes

At the very least, it appears that your name is attached to each file.

This seems like a fine idea. People can do whatever the hell they want with their music, but if they share it widely, Apple and others know who to sue. (I'm not sure how the tech will actually shake out.. like all other methods, stripping this info out of the file for someone who's suitably determined would be a trivial act.)

vista rant #1

You no longer seem to have direct access to 'c:\Documents and Settings' it appears to be in multiple places all over the system (as symbolic links) and none of them will give you the ability to browse their files. All I ever get is 'access denied'. I hack program files in there all the freaking time.. in this case, I want to put a heavily modified copy of my mouse configuration's xml file on the new box, so it matches my laptop. That ability seems to have been taken away from me in the interest of security. Fuck security.. I was reasonably secure before..

Vista First impression. It sucks in amazing ways.

Well, I've got a Vista system under my desk now. From what I can tell from a low level low usage perspective it is fucking horrible. I set it up quite a few days ago, and was pretty impressed with the pretties and such. Then I started to actually.. um.. use it. UAC is garbage. It asks you to confirm confirmation boxes! (so, where you'd usually get an 'are you sure' box from say.. IE7.. UAC throws an additional one on top of that!) It's the stupidest thing I've ever seen.

Cross Site Scripting Response

I listen regularly to security now, and there has been a lot of talk lately about cross site scripting vulnerabilities on blogs and websites.

For a more detailed writeup of what cross site scripting is than I could ever produce, check out trusty wikipedia.

Aaron's really basic overview

For a really basic overview, here it is. Basically, in html documents (such as this one) you can put client side code (javascript, generally but it can be many flavors) anywhere on the page.

You can completely mix content and code however you want.

Now, years ago, when the web was young, and pretty much a 1 to many broadcast medium. (I post content, you look at content, nothing more) this was not a problem. The only way you could make my server spit out content was to get my ftp credentials.

The problem comes when you accept content from users.. which is all the rage with the young kids ever since... 1995? ; )

So, I have a guest book on my site. If that content is not properly checked, a you could include a line of code that would kick all users that hit that web page to a porn site... or cover it in platypuses. Worse still, you could include a line of code that would have javascript send you a copy of all the user's session cookies.. which would allow you to pose as them on the website.

Not a big deal for your average blog.. but amazon.com? banking? You get the idea.

Solution: uh.. browser manufacturers?.. w3c? turn that stupid crap off!

With current html standards and practices.. there is absolutely zero need for tag attributes that execute code such as 'onclick' 'onmouseover' etc. There is also absolutely zero reason a <script> tag should ever be found mixed in with content. Most useage of both at this point is due to either backward compatibility with really old browsers, or sheer laziness.

Arduino NG Google Sketchup Model

I created a basic model of the Arduino microcontroller board in Google Sketchup. Sketchup is a really handy tool. Once you learn to use it, you can model anything and everything with arbitrary accuracy. This model is accurate down to .01mm. (the resolution of my digital calipers)

It should be a handy thing for anyone looking to prototype something digitally before they go making parts.

Run that "Run" menu the way you wanna!

So my friend Nik asked me something about emulating launchbar and quicksilver on the mac, where you can basically type a command at the mac and it will figure out what you're looking for with pattern matching.

This won't do that. Not by a long shot. ; )

The thing he asked me was about the windows run menu, and getting things to run from there with simple commands.

If you're on a windows box, you can do the following:
hold down the windows key,
press 'R'
type 'calc'
hit enter.

Bam! you've got the calculator. Well.. that's handy and all.. but what if you want your own programs in there.

Nik pointed me to the PATH environment variable as the place to change what the run menu searches in.

If you know what your environment variables are, then you probably don't need my hand holding. I added one that points to My Documents\bin\ as I preserve my my documents folder across formats, and I like to keep everything there.

For the rest of you. There's already an environment variable in there pointing to your systemroot. that's C:\Windows\

If you go there, and drop any windows shortcut in that directory, the name of that shortcut becomes the keyword you enter in "run".

Yay! Make a shortcut that points to photoshop, name it 'ps' and put it in C:\Windows\

Then, windowskey-R, type 'ps', hit enter BAM! Photoshop! I'm never going to use my mouse again!

UPDATE

I hadn't a clue how cool this would have been!
1. It passes arguments along.. so.. i made a shortcut called 'ff' that points to firefox. if i use the command 'ff google' firefox opens up and runs google. also, because firefox is soo damned smart, if it's already running, it'll just put google in a new tab.

2. you can do shortcuts to sites. take a firefox shortcut and add a url as an argument after 'firefox.exe'. That pretty much give limitless capacity for web application shortcuts.

3. firefox will take multiple arguments. guess what
"ff aaronpropst.com google.com" does... ; )

Pages

Subscribe to RSS - software