Thursday, October 30, 2014

Wine Advent Calendar

Why do no retailers (Costco) sell an advent calendar filled with single serving sized bottles of wine?  Or just alcoholic bonbons.

(This is not my original idea, but the idea that's floating around seems to be all full sized bottles)

Monday, September 29, 2014

Cordova + AngularJS = App

On Windows, with Java already installed.  There is no right way, but there are a million wrong ways.

  1. Install node.js, ant, android sdk and setup paths/dependencies.  Setup Android VM and run SDK manager to download additional SDK dependencies
  2. Install cordova w/ npm
    1. npm install -g cordova
  3. Create empty cordova app in projects folder
    1. cd projects
    2. cordova create my-app MyApp
    3. cordova platform add android
    4. Install some plugins
  4. Run the empty app
    1. cordova emulate android
    2. Wait many minutes for VM to boot
    3. Cordova's hello world app displays
    4. Leave emulator open for faster build/deploys later
  5. Ditch that app and start from scratch knowing that you can always go back quickly
  6. Download yeoman and setup more complex project structure
    1. npm install -g yo
    2. npm install -g generator-angularjs-cordova
    3. yo angularjs-cordova
    4. grunt build
    5. cordova emulate
  7. Start hacking

Tuesday, July 29, 2014

Adios, Autoweek

Autoweek redesigned their website recently and it looks great.  Unfortunately, they deep sixed their (probably extremely unpopular) RSS Feeds.  So you've got to follow them on google plus or facebook or just actually take the time to look at their website every day or two in order to see all their articles.  Luckily, several of their competitors (like still keep RSS feeds available for weirdos like me.

Tuesday, July 08, 2014

How Not To Design a Web Application

Little problems make a big difference when they affect the core functionality of your app.

Example 1: At a certain huge credit union you can opt in to receive electronic statements for your accounts.  The option to actually receive email notifications that your electronic statements are available on their website is hidden on a different settings page.  What are you receiving if you select the first option only?  Nothing.  You are receiving no mail and no email.  You are fetching things from their site on a set schedule that you have to remember, but if you forget the schedule, you get nothing.  Their response when I pointed out that these two settings were very close in functionality and belonged at least on the same page?  "We have professionals who designed our application and we are very proud of it."  Forget logic, they paid somebody to write the site and the mere fact that they paid for it means it was done right even if it makes things harder on their customers.

Example 2: Garmin Connect.  They've been unveiling a redesign recently to move from their old basic fitness web app with a fairly fixed workflow to a dynamic portal which will also serve portlet content to their mobile apps on different platforms, allowing them to present a single user experience with a single codebase.  The whole point of the site from a business perspective is to lock people into Garmin devices for their fitness wants (nobody needs these things) and pressure their friends to also use Garmin by providing basic social functions.  The whole point of the site from a user perspective is to have a place to review old workout data, plan new workouts, and synchronize that data with a Forerunner or whatever other device the user has.  There's a calendar in the app that lets you schedule workouts.  It is not available directly in the Android app (maybe on apple, I don't know).  If you look at the mobile view of the calendar it does not adjust to your screen width.  Creating workouts is a huge hassle and there's no obivous way to import or export them from other programs like their old desktop application, Garmin Training Center.  And the worst part of the calendar is that creating and scheduling workouts does NOT send them to your phone.  There's another secret step that you have to do before you can actually use the workouts you are creating and scheduling.  There is a generic arrow icon in the top left of the calendar.  If you click that, you can get an iCal url or tell it to send your scheduled workouts to your device.  One of the three primary reasons to have the app is to get data on and off your garmin brand device!  Why would you create data and not want it on the device?  You wouldn't!  Nobody would!  There's no way to share or export workouts or training calendars in their user interface so that data has no reason to exist if is isn't going to a device. 

Monday, March 31, 2014

Java Web Searching Annoyance

I'm sure it's useful to somebody, but I'm extremely sick of all my java EE programming web searches turning up tons of links to mkyong [dot] com.  The minimal examples do not help if you know the basics already.  It's just in the way at this point.

Tuesday, March 11, 2014

Jquery Geo Plugin IE8 Bug

The geospatial library jQuery.Geo has a small bug in development environments where it will throw an error because createStyleSheet() fails in older versions of Internet Explorer if you have 30 or more stylesheets already.

I would contact the developers, but I'm not going to waste time signing up for twitter.

Monday, February 24, 2014

Google Maps Redesign Review

Short Version: Use Bing Maps instead.

Long Version: I don't want a mapping application that takes a lot of guess-clicking to do basic things like look at the current traffic where I am and shows me different controls depending where I am or what I'm doing.  I want the UI to stay static so I don't have to remember a byzantine series of chinese-box-opening steps to perform various actions.  And the "Peggy" thing is obviously a knockoff of Clippy.  Either treat me like a web app using genius or idiot, but not both, please.  It's beyond condescending.  It's aggressively and directly insulting.

Looong Version: Craaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap.

Thursday, February 20, 2014

Suggestion for Convention Goers

Maybe get all your vaccines up to date.  You're killing me, nearly literally. 

That said, Katsucon was a huge blast, all the people were awesome (except for the risque costumes),  and we didn't get deathly ill until later.  I blame the buffet at the National Harbor, which is completely baseless speculation, but it's the only thing my wife and I both partook of that the kids held back on and we got sick immediately while they carried on for three days unaffected.  Big old waste of money for bland vaguely Asiatic food and stale rock hard desserts even if it wasn't dodgy (it probably wasn't, the kids also used the hand sanitizer much more than we did).

(Please don't sue me, National Harbor, this is just one person's unfounded opinion about vague possibilities due to limited anecdotal evidence)

I wish I had a few billion dollars to buy up and return the most offensive houses on the Virginia side and the national harbor itself to forest and swampland.  It's pretty for Las Vegas, but not for DC.

Thursday, February 06, 2014

intellij 13

I just noticed that JetBrains finally removed the memory usage widget in the bottom right of the IDE which let you manually run the garbage collection when you clicked it.  Kudos!  That was an annoying waste of time.

Monday, January 13, 2014

2011 Jetta Sportwagen Manual TDI Quick Review

This car is good, but quirky.  The shifting is nice and usually, but not always, easy (I guess the cars needs to get warmer sometimes).  The computer telling you when to shift for the best fuel economy is a bit of a joke since it wants you to shift into a higher gear when the engine would be running at about 1000RPMs where the diesel actually does sounds loud, rumbly, and dieselly.     The experience of driving with the TDI engine is ok, but definitely not as responsive as a gasoline would be.  I've mostly adjusted to the lower redline and higher bottom end stall speed, but my car has an ECU remapping in it's future for sure though.  The suspension is a nice balance between comfort and stiffness. 
The Bluetooth integration is borderline garbage.  They want you to use their voice activated features which suck.  Pressing the button which looks like a phone handset doesn't send a button press message to the phone, but instead has the car ask what you want and then fail to do it (it wants me to give every one's name as Lastname, Firstname when I tell it to dial).  I guess 2011 didn't know that voice activated dialing was already on every phone ever made at the time.  Good luck using their system with google now or Siri.  And if you want to use the Bluetooth audio to listen to MP3s on your phone, the play, pause, and skip track buttons don't work.  You also have to make sure your phone is playing before you're allowed to switch to the BT Audio input (which means you miss the first few seconds of your first song). 
The radio shows RDS data 8 characters at a time.  It has a 6 inch wide screen and leaves 5 inches blank instead of showing you the artist and song together.  This isn't a problem if you pay for the builtin satellite radio.  You get 12 presets and only 12.  The satellite radio has something like 30 presets, but with FM/AM, you're out of luck.  I'm probably abnormal in listening to more stations than that on a somewhat regular basis, but I can imagine a road warrior wanting to be able to keep presets for different cities.  I don't understand why it has to be limited at all.  They might just need better software teams.  At least the FM reception is strong and clear at much greater distances than I'm used to. 
My kids love it for the most part, but when there are three people in the back, they have nowhere to put their juice because the cupholder is in the middle seat arm rest that folds down.  Even with boosters, they're also still a little too low to see out the windows, which I hear is key to discouraging motion sickness on long trips.
The door lock buttons on the doors are stupid and pointless.  When the door is open, the button on the car won't lock the doors.  So you have to get out, put your lunch and computer down in the frigid weather, dig out your keyfob again, and then lock it.  I know they don't want you to lock your keys in the car, but it's still just plain stupid.  I have forgotten to lock my doors at all several times now since I don't always remember the extra steps.  When I go out in the morning to run and remember to check the door, I have to go back inside and get the fob to lock it if I actually want to.  VW engineers must have secured garage parking to not think this is a problem. 
The 110V AC outlet in the back is very convenient.
The driver's seat has adjustable lumbar support and a good moderate amount of side bolstering so you don't move, but you also don't feel like you're in a metal cocoon like in a lot of newer GMs and Fords.  The passenger seat lacks the lumbar knob (I think).  The back seats are pretty cush and have plenty of legroom despite my way back driver's seat, but the booster seats slide around side to side a lot on the slick plasticky leatherette surface.

All in all, I'm happy with it because it's a manual station wagon in spite of the dumb VW design decisions, it gets great fuel economy, and because, even though it's a diesel, it's much quieter than the equivalent Subaru wagons.  I still wish more other car makers put manuals in their wagons though.  Not having a lot of choices with stick shifters made me more willing to accept bad design than I should have been.  If anything happens to this car, the odds of me buying another modern VW are close to zero because I don't want to deal with their design intruding on my control of every aspect of my driving experience. (Conversely, the odds of me buying an air-cooled Beetle or Super Beetle at some point are close to 100%)

Other cars which I considered: Ford Focus, Ford Fiesta, the 2014 Mazda 3, the Subaru non-wrx,non-sti Impreza, the Subaru Crosstrek, and a 1996 Buick Roadmaster on ebay that had been converted to stick shift,
What I really wanted: 100 more horsepower in this Jetta Wagon and electronics/ergonomics that were less moronic. (I hope to get both of those things eventually through the aftermarket and maybe some custom work)  I also wanted the super huge Jetta wagon sunroof option, but couldn't find it on a manual used Jetta in the area in a timely manner.  That thing is unrestrained wonderful and would have made me a little less angry with the design mistakes.