My new iPad

This morning there were people lined up around the Apple store, standing in the rain as they waited to be the first to own an iPad. The store opened at 10:00. I went at 12:30. No wait, no line. I walked out at 12:35 with my new iPad.

I didn’t expect to like it so much!

The first thing that’s immediately clear is that it’s not just a big iPod. Its more. The iPad is big enough to read on. It’s completely useable as a web browser, e-Book reader, video player, etc.

Even with the small handful of apps available today at release, I am already impressed. The news apps are fantastic. The weatherbug app is awesome. Kayak is killer. So far, I’ve only downloaded free apps, but most of them are exciting to see and use. The potential for this device is huge.

The built-in apps are updated, too. The music player looks a bit more like iTunes now. The contact book looks like an actual contact book. The photos app has lots of cool new features, including allowing the device to act as a digital picture frame. And I’ve never had so much fun playing with Google maps as I had today.

After playing with it all day (battery life also rocks), I have just two complaints. First, typing with the on-screen keyboard is painful; it would probably be fine for on-the-go use, but anyone making extended use of the iPad is going to want the accessory keyboard. And second, it runs apps designed for iPhone/iPod, but they run small and are a pain to use; though I imagine that over time, most apps will be updated to work on the iPad and this will be less of an issue.

I’m convinced this is the future of computing for many people. Apple has redefined the computing paradigm with the iPad. And thanks to the iTunes Store and App Store, it will be extremely difficult for any competing product to pose a challenge.

I’m also convinced that this will be a Kindle-killer. Or, perhaps more accurately, that Amazon will have to put some serious new features into the Kindle, and lower the price, if they hope to survive in an iPad world.

Tags: , ,

Рабочее день программиста

Менеджер пришел к программистам и сказал: Относительно вашего рабочего времени: вы должны приходить в девять утра и уходить в пять вечера. Всех рассердило это заявление, а несколько тут же уволилось.
Тогда менеджер сказал: Хорошо, в таком случае вы можете сами устанавливать рабочее время, лишь бы ваши проекты завершались вовремя. Программисты, удовлетворенные, начали приходить к середине дня и работать до рассвета.

Ways the internet is changing the world, #438

During a good-cop/bad-cop routine, slamming an iPhone down on the table just doesn’t make the same noise as a phone book did…

Can I learn to speak Italian fluently in one year?

After the success I had with Russian last year, and with my goal to learn Italian this year, I have decided to take on a fantastic and fun new project: I am going to learn one new foreign language fluently every year!

Last month, I started a new web site, www.FluentEveryYear.com, and I am excited to report that I have already started to gain subscribed readers and Facebook fans!

There will be plenty of tips and tricks for learning any language, and even more useful information if you’re interested in learning Italian — or whatever the language of the year is — so go check it out!

MacOS X error 0×80020022 trying to burn DVDs

After being tremendously frustrated with my iMac failing to burn DVDs, and stressing myself out over what media might be supported, I’ve hit upon the solution to my problem: unicode characters.

I wanted to burn a DVD containing AVIs of Russian video, and I had given the Burn Folder a Russian name. Every time I tried to burn, I was greeted with error 0×80020022, and the media was immediately ejected.

Remembering the days of CD-R media and the compatibility hassles I once experienced, my first thought was to go buy a different brand of DVD media. But I experienced the error with the new media as well.

After stumbling onto a Mac support forum in which users blindly suggested that renaming a file had fixed the problem, I realized that I was probably trying to use forbidden characters in the volume name. Spelling my Russian words out in a Latin alphabet did the trick, and I am now burning the files.

Tags: ,

Reflections on 2009

Well, I hemmed and hawed, and I wasn’t planning on doing one of these this year, but I’ve finally decided to do it. A lot of things happened in my life in 2009, and a lot of it was actually good. So I feel like sharing.

My career had basically stalled at the company I was working for, but out of comfort I didn’t want to leave. Amazingly, I spend the majority of last year getting paid to sit on my hands. My company actively ensured that I (like most of my coworkers) did no real work since fall of 2008. Would I like to have been more productive career-wise? Yes. But overall, I think I used that dead time effectively.

For starters, I did manage to do some work-related work, and with a wealth of free time to do it in, I made the choice to learn more advanced languages, tools, and architectures. Using those more advanced development strategies was almost certainly overkill for the tasks I performed, but the knowledge I gained was valuable for my career. And frankly, when a company isn’t interested in using my talents effectively, I’m going to use their resources to improve my marketability toward finding a better company to work for.

Next, I managed to use a lot of my free time, both at work and at home, to study Russian. I began 2009 knowing perhaps 10 useful phrases in the Russian language. A year later, I am beyond conversational and close to fluent. I understand 70-80% of what I hear, and have a vocabulary of approximately 3500 words. I can read, write, speak, listen, search the web, order dinner, and withdraw money from my bank in Russian.

But I didn’t stop there… I’ve also begun learning Italian, Ukrainian, and Polish. Admittedly, Italian is easiest for me, being a fluent Spanish-speaker… but I can successfully read and understand Ukrainian and Polish, and I have even followed a few simple recipes written in Polish on food packages.

On finances, I dropped more than $10,000 in debt last year and paid off all but one of my credit cards. I might have done even better — maybe even completely paid it all off — but supporting two additional people, paying for repairs from a house fire, covering high medicine expenses for a Medicare donut-hole, and a handful of other large purchases prevented me from complete success. I will complete this, however within the first couple of months this year.

That financial progress was boosted toward the end of the year as I changed jobs not once, but twice in November — in spite of all the horror stories about our economy. I’ve upgraded my career to one that is thoroughly enjoyable and far more fulfilling, and I manage to bring home more money too. All of this leaves me with good prospects for what’s to come in 2010.

And with regard to my photographic passions and goals, I was contacted last year by an editor compiling a book of photography, and I will have my work published. While it won’t actually be published until this year, I count this as recognition given last year for the amazing progress my artwork saw in 2009.

And 2009 was also a year filled with new experiences. I had many firsts, including seeing a symphony, going to the ballet, attending a master piano recital, riding a train across country, seeing showgirls dance in Las Vegas, and learning to make crepes.

So what’s on tap for 2010? There’s no knowing for sure, but here are my thoughts at present:

I had intended to do international travel last year and I failed that. Partially due to poor planning, but mostly due to a new economic situation for the world, and for myself. This year, those excuses won’t work. My finances are completely under control, and my plans are more specific: For my two (minimum) international trips, I want to drive to Canada to see Niagara Falls, and I want to fly to Russia and ride the Trans-Siberian express cross-country.

While continuing to study and improve in Russian, I intend to achieve at least conversational level in Polish and fluency in Italian. This is an aggressive goal, but one which I feel I can achieve. I will measure my success in Polish by shopping in the many Polish stores here in Chicago while not using English. And I will measure my success in Italian by finding Italians with whom to converse… perhaps by Skype, or perhaps by finding a local group… or perhaps by traveling to Italy.

I also intend to experience some more “firsts”, including (but not limited to): riding in a hot air balloon, skydiving, and snowboarding. This is also a good year for me to cross of more states which I haven’t visited yet. I wonder if I could use Alaska as a jump-off point to Russia…

Ten tips about something I know nothing about

I can’t help noticing that the majority of blog posts these days are lists of advice about things that are either common sense or utter bullshit.

The best ones, though, are those that propose a list of ten must do strategies for using an unproven technology in an undocumented business sector in relation to a prediction of things that haven’t even happened yet.

For example:

  • Top 10 priorities for online marketing in 2010
  • Eight things you must do in order to succeed on Twitter
  • 12 ways to be the better than everyone else, even the millions of other people who will also read this article
  • 9 surefire ways to know that I’m a full-of-defacate author and not an SEO expert
  • The 8 keys to showing others that I’ve never actually done the thing I’m writing about

There’s an elderly saying that goes “Those who can do. Those who can’t teach.” Obviously, that phrase was coined before the internet came along and made experts out of everyone.

App Approval

I see a lot of complaints from developers about Apple’s app approval process. But here’s the thing: If developers aren’t complaining about app approval, it means someone, somewhere, is not doing their job right. If apps went out the way developers wanted them to, they’d have ugly interfaces, poor memory management, and no error checking whatsoever.

Personally, I like Apple’s app approval process. And I like the fact that it’s rigid and painful. In fact, I don’t think it’s rigid enough. I’d like to see them make it even harder to put apps like “iFart” online.

But, like it or not, iFart isn’t going to cause a system crash when you receive a phone call while using it. And that’s what’s important. The iPhone isn’t just a handheld computing platform…. it’s also a phone. And that means it has to work. It can’t be crashing all the time. And Apple’s process helps make that a reality.

Tags: ,

Bug tracking via Twitter?

An interesting thought just occurred to me… It seems quite reasonable to implement the Twitter API as a bug-tracking tool.

A software team could implement a Twitter account for bug tracking, and include the API into their projects within various try-catch blocks around potential points of failure. Then, all the members of that team would just follow that twitter account. For more critical applications, they could turn on device updates. It seems like a more available version of the elderly developer’s standby of programmatically emailing bug reports.

For sensitive applications, the tweets could be “protected”… but for less critical uses, the visibility of the public timeline would seem to be an added incentive for developers to fix bugs quickly.

It’s an interesting thought.

Tags:

TweetPost WordPress Plugin

TweetPost is a multi-user plugin that automatically tweets bit.ly or su.pr links to new posts.

Description

TweetPost is a multiuser plugin which allows wordpress publishers to automatically tweet their new posts to their Twitter account. Tweets consist of a message (“New post from @user”) including a reference to the author’s Twitter name, the title of the post, and a bit.ly shortened link to the post.

Currently, the Twitter Poster consists of the following features.

  • Authorize a global Twitter account with the site
  • Specify a Bit.ly login and API key to associate with the site
  • Adds a “Twitter” property to user details, so users can manage their own Twitter name
  • Automatically submits the permalink to bit.ly and adds that to the tweet
  • Adds a reference to the author’s Twitter account in the tweet
  • Fits the tweet into Twitter’s 140-character limit.

License

This Twitter Poster plugin and WordPress Plugin Framework are being developed under the GNU General Public License, version 2.

[GNU General Public License, version 2](http://www.gnu.org/licenses/elderly-licenses/gpl-2.0.html “GNU General Public License, version 2″)

Download

The current version can be downloaded here: tweetpost

Installation

  1. Unzip the archive file.
  2. Verify the name of the unzipped folder to be “tweetpost”
  3. Upload the “tweetpost” folder to the root of your WordPress “plugins” folder.
  4. Activate the “tweetpost” plugin in your website’s plugin administration page.
  5. Navigate to the “Settings” ~ “TweetPost” administration page, to add account info.

Frequently Asked Questions

Do I have to register my blog with Twitter?
Yes. Due to details of Twitter’s implementation of the OAuth protocol, it is
necessary to register your blog as a Twitter API consumer application. It’s silly, but fortunately it’s not difficult to do.

Change Log

  • 1.0
    • Added support for Twitter OAuth protocol
    • Removed support for Twitter’s (now defunct) Basic authentication
    • Added messaging missing configuration
  • 0.1
    • Initial version

Tags: ,