March 24th, 2012

Ready Player One

It’s not often that I post book recommendations here, but here goes one. If you’re a child of the 80′s; if you ever walked into the arcade, dropped a coin in the slot in the slot let the “real world” fade away for a few hours; if you can quote lines — just a few or all of them — from Star Wars, War Games, Breakfast Club, Ferris Bueller’s Day Off or Monty Python and the Holy Grail; if your head bops to INXS or you sing along with Duran Duran, then you owe it to yourself to grab this book, right now! As one reviewer over on GoodReads put it, “This book is nostalgia porn.” It’s not great literature, but Ready Player One is a fun, somewhat YA, romp through the things that were so much the background of our childhood.

Ready Player One, by Ernest Cline.
[Hardcover]
[Paperback]
[Kindle]

The year is 2045, and the world has finished it’s fast-track slide to the bottom of the heap. Pick any dystopian movie setting; this fits right in. There is one bright spot for people, and that’s that they don’t have to actually spend time there — they can instead put on a headset and live in OASIS, a full-time virtual world. When the creator of the world dies, he leaves behind the ultimate game – with the winner taking his enormous fortune and control of OASIS. And the creator was — wait for it — a huge fan of 1980′s culture, so the game has more references than you can keep up with.

March 14th, 2012

Intro/Refresher Resources for SQL

SQL iconI was asked to find a few refrerences for our people here; folks who are new to SQL or just haven’t used it in a while. Rather than have my notes tied up in email, I figured I’d put them here for all to use. We use both Oracle Database (10g now, 11g soon) and Microsoft SQL Server.

For a good SQL intro/refresher, I would recommend Murach’s SQL Server 2008 for Developers: Training & Reference by Bryan Syverson and Joel Murach. It is, as the title suggests, targeted toward the use of Microsoft SQL Server, but the 90+% of SQL Language features will apply to other SQL-based databases as well.

Another very good resource is Learning SQL, by Alan Beaulieu; this book covers the SQL language as a whole, without being specific to any one implementation.

For a practice environment, you can download and setup either MS SQL-Server Express or Oracle Express on your computer.

There are some basic differences between Oracle and Microsoft SQL Server, I’d recommend wandering through these if you, like us, will be playing in both worlds:

The first difference that we will see right away (from the StackOverflow question above): Transaction control. In Oracle everything is a transaction and it is not permanent until you COMMIT. In SQL Server, there is (by default) no transaction control. An error half way through a stored procedure WILL NOT ROLLBACK the DDL in previous steps.

There are also excellent courses available at Pluralsight, and they have a 10-day free trial available.

Enjoy, and let me know if you have other resources that have worked well for you.

addition: You may also wish to check out the SQL University (start here).

December 27th, 2011

Sharing your highlighted Kindle text

An addition to my previous post, about using highlighted text on the Kindle. Amazon’s Kindle preferences page, https://kindle.amazon.com/home/preferences can also be used to enable automatic sharing on Twitter and Facebook.

October 25th, 2011

Getting highlighted text from the Amazon Kindle

Buying electronic books for the Kindle, and in conjunction the Kindle app on various devices – PC, Macintosh, iPhone, iPad, Android tablet, etc. – has just become much more useful for me.

Among the nice features of the Kindle software is the ability to hilight blocks of text and to take notes. This is hardly something new; I often hilight passages in paper books too, and use Post-It notes to leave my comments, questions and thoughts. The hard part is in remembering exactly which books on my shelf held the quotes I marked or notes I left. With electronic books and notes, I should be able to let the computer do the remembering and searching for me. Unfortunately the Kindle is pretty much a closed system; I’d found no easy way to get to the highlights or notes other than through the Kindle itself. That makes the use of hilighted text in blog posts, letters or presentations difficult.

All that changed today, thanks to this article and a comment left by someone named Zach. I’m happy to have found a way to get information out of Amazon’s system. It’s by no means perfect or automatable, and there’s no guarantee that Amazon won’t change this or take it away at some point in the future, but for now it’s better than nothing.

Go to kindle.amazon.com, log in using your Amazon account, and click on Your Books. You should get a listing of Kindle books you’ve purchased from Amazon.

If you’d like to use their system to keep track of your reading, you can do so under the Reading Status column, and you can rate your books as well. You also have the option here of making your status, ratings and notes public from this page, though I’ve not figured out yet how someone else would see them. update: use the “Hello <name>” menu at the top right-hand corner of the page to view your Profile, then people can use a link like this (thanks to this post by Scott H for helping me discover it).

Now for the good part – click on Your Highlights at the top of the page and you should see a listing of books along with your notes and hilights.

screenshot of Amazon Kindle Your Hilights page

From here you can copy the text and paste it wherever you’d like.

This changes the decision of what format to purchase books – electronic or paper – for me.

This is not meant to be a method for wholesale plagiarism, of course.

(btw, if there are other ways of getting notes & highlights out of Amazon’s locked box, please let me know in comments below.)

 


Interesting juxtaposition: my initial search for “how to copy text from hilights” came as I was trying to decide what format of a book to buy, paper or Kindle. The book in question is The Innovator’s Cookbook, by one of my favorite non-fiction authors, Steven B Johnson. The article I reference above, where I found the comment, is in response to something Steven wrote. And today, at about the same time as I was creating this very post, Steven was posting to his own blog about a tool to “capture what I was reading.” The tool is Findings, and it includes a way to grab data from the very kindle.amazon.com page I had just discovered!

This isn’t the first time that this has happened, by the way, see Accidents and Emergence.

October 21st, 2011

Don’t Just Say…

Advice for my software testers, though it applies in many other parts of life as well:

Don’t just say “this doesn’t work.” Use “this doesn’t work, here are the things I’ve tried, and this is what I think is wrong.” Optimally, follow with “and here’s how I think it can be fixed.”

 

 

October 12th, 2011

About Time

Adam Frank, About Time: “We’re nearing the end of time as we know it now and as we live it now.” part 1, part 2, part 3, part 4.

October 3rd, 2011

Area 51

book cover I just finished reading Area 51: An Uncensored History of America’s Top Secret Military Base, by Annie Jacobsen. [Amazon] Lots of previously-unknown history. It’s a good book, even if there aren’t enough aliens.

August 26th, 2011

C#: Using Reflection

Nothing special for most developers, nor interesting to non-devs, but I posted some C# code to read a text file and use reflection to create objects.

July 8th, 2011

12 years, 7 months and 4 days Ago

In 1998, I was working for Digital Equipment Corp (DEC) and the NASA Payload Data Management Systems group at Kennedy Space Center was one of my customers. I was able to schedule an onsite visit for December, right at the time of a scheduled shuttle launch, and they got me tickets to the turn basin bleachers – about the closest you can get to the launch complex, next to the big countdown clock. The launch was to be about 4:30am on the 3rd, and I was there. A spot of trouble delayed the launch, and had to be rescheduled for the next morning. After a day of work and a bit of sleep, I was there again.

Watching the Endeavour leave the Earth on its way to the International Space Station was one of the most impressive things I’ve ever seen.

It saddens me that the launch scheduled for today will be the final one for America’s shuttle program — as far as the public can tell the final launch for NASA — and that future generations won’t have the chance to be as proud of our nation as I was on that night.

June 26th, 2011

What To Do, Part Two

Several weeks back I wrote about posting medium-term priorities at the top of my whiteboard as a way to keep from getting sidetracked. The three stories that I’m working on completing by the end of the week, the three outcomes I’m expecting (or expected) to produce. That continues to work well, though it might be better if my desk & cube walls were configured differently so that the whiteboard was in front of me instead of behind and off to a side.

The situation still arises, though, where there are many tasks to be done that all fit within those three main stories. It’s real easy, when faced with a mountain of tasks, to try to attack them all at once. “I can get a little of this one done, then a little of that one,” the thinking goes, “and hey that third one is important too so I should work some on that one so I can talk about it at tomorrow morning’s stand-up meeting.”

Bad idea. More and more, we’re hearing that multitasking doesn’t work, and I agree. Even when we think we’re getting several things done in a day, we’re not doing any of them as well as we could. The little task-switches are leeching brain-power and and we don’t even realize it.

So how can we reduce multitasking? That’s simple – just don’t do more than one thing at a time.

OK, so it’s not really that simple, but in a way it is. Pick one thing and work on it to completion, or at least to a reasonable stopping point.

How? Back to the whiteboard. Personal Kanban on my Whiteboard I still have my priorities at the top, but now I’ve started putting every task needed to fulfill those priorities on a “yellow sticky” (the generic term for 3M Post-It Notes and clones thereof). There are also three columns, a little hard to see in the photo – “Next,” “In Progress,” and “Done.” Under the “Next” column is a section I’ve called “Backlog,” which is for anything not yet in the other three columns. Now, here’s the magic part – the “Next” and “In Progress” columns cannot have more than two items in them. Can’t. It’s a rule, and I don’t break it.

I know, I know – allowing two items to be “In Progress” at the same time still implies multitasking, but in my business I know that I can’t really work on something straight through. I need to get information from someone who’s at lunch, a database task takes 20 minutes to run, that sort of thing. So I allow myself to have two tasks “live” at any time, but there’s really only one that I’m actively working on at any given point.

If When someone brings me another task, or one pops into my head, I take 5 seconds to write it on one of those magic stickies and put it on the board. Five seconds, no more, then I’m back to work. Why take the time to write it down? That’s a bit part of David Allen’s Getting Things Done – don’t make your brain keep all the little bits of “I have to do this later” thoughts, put them on paper and let your brain get back to working on what’s important.

Back to the whiteboard. When a task is done, it goes to the “Done” column and I re-evaluate the tasks in “Next” and “Backlog” with regard to my overall priorities. It’s a really simple way of keeping things straight and getting things done without all the frustration and wheel-spinning. Now, I know that you think I’m some sort of genius for having come up with this, but that’s not the case. Kanban is a scheduling system that comes from the smart folks at Toyota. you might want to browse through this personal kanban site for more info on a less corporate, factory-line take on it. There’s also this book, which I’ve not read (yet) but has good reviews.

Give it a shot – it doesn’t take a lot of setup or cost and it’s reasonably easy to implement; you just have to set some limits and then do your best to stick to them.

There is, of course, still the question of how to get that one thing done. I’ll write more about that in an upcoming post. In the meantime, have a tomato.