Updates

One of my goals for 2018 is to write more.  So here’s an update on stuff.

We hired a new developer who comes on board in a few weeks.  I’m really excited about his Xojo experience and what he brings to the company.

The planets and stars aligned and I will be going to XDC in Denver next month.  This makes me very happy as XDC is one of my favorite events!  I get to immerse myself in Xojo for a week and see all my friends and meet new ones.  I’m not presenting so that makes life a little easier too.

The week of XDC is going to be hectic as the weekend before as the FRC robotics team my son is on will be attending the World Championships in Houston.  Last weekend they won the Heartland Regional Tournament in Kansas City.  After a pretty disastrous first day where a lot of mechanical issues arose they had a solid last day, got picked by the 3rd seeded alliance, and eventually won the tournament (an alliance is composed of three teams) and advanced, automatically, to the championship tournament in Houston.

If you are geeky and interested in what these kids build, here is the final match where they won the tournament.  https://www.thebluealliance.com/match/2018mokc2_f1m2

The Sound of Silence

Hey folks!  I just wanted to let everyone know that I’m still alive and kicking.  2018 has started off busy and chaotic.

I’ve been on-site with a client for nearly three weeks since the first of the year with a project, that while fun, has been challenging.  It involves big touch screens, credit card terminals, talking to three serial devices over USB, and calling into a Windows DLL.  This is the second major project with this client.  The first one required using Xojo for iOS with an integrated barcode scanner.

My son is a senior in high school (and all that entails) and co-captain of the FIRST robotics team.  I spent a good chunk of my limited free time writing their scouting application not only for desktop (Mac and Win) but for iOS as well (using Xojo of course).  Nothing like doing a big(ish) project for free.  Oh yeah, I’m nominally the programming mentor though I’ve had to step back some (since being out of town so much).

If you want to learn more about FIRST robotics and the challenge for 2018 go look at https://www.firstinspires.org/robotics/frc/game-and-season  I can’t say enough good things about FIRST and what it’s teaching these kids.  I believe the future is bright when I see what these kids accomplish (mostly) by themselves.  For what it’s worth my son received a really nice scholarship to a good university because of his FIRST robotics involvement.

To add into this mix BKeeney Software has been shorthanded for a variety of reasons.  My workload tripled a few weeks ago and we’re actively looking for a new Xojo developer.  As if I needed more things to do.  🙂

Mostly because of senior year commitments only one staff member is going to XDC in Denver.  This saddens me, a lot, since I haven’t missed an XDC since 2004 (I think).  It also means it’s unlikely that we’ll make it to the MBS conference in Munich this Fall.

I’m looking forward to some much needed time off.  I hoping that once things settle down and a new developer (or two) is on board I can get back to writing more.  2018 is going to be a big year for Xojo with so many things coming on board (the new web framework, interops, 64-bit debugging FINALLY working in Windows, and Android to name a few).

The Xojo Community is Awesome

Have I told you how much I love the Xojo community?  I’ve been part of it for fifteen years and I’ve met hundreds of Xojo developers at developers conferences and probably exchanged emails with thousands more.  I am amazed at how much this community helps each other and I wish there was a way to promote that as a key feature of the product.  It’s a big deal.  Really!

If you’re just starting out using Xojo know that there are a bunch of people, myself included, that are willing to help out, if we can, on your journey.  Programming is hard.  Well, I don’t think it’s hard because I’ve been doing it for so long, but it is complex at times and that makes it hard.  Just ask your question in the Xojo forums and you’ll almost always get an answer within hours.

Even Xojo pros, such as myself, have need of help.  Xojo covers Mac, Windows, Linux desktop, console, and web apps.  It does iOS apps for iPhone and iPad.  It now does Raspberry Pi for heavens sake!  It works with dozens of different databases.  There is simply no way any one person is going to know everything there is to know about Xojo.  It just can’t happen.  So yes, I go to the forums, all the time, and ask for help.

Just the other day I asked for some help with WooCommerce.  Not Xojo related, really, but certainly related to a project we’re working on for a client.  Within a few hours I had half a dozen developers private message me saying they might be able to help.  Subsequent contact narrowed that list down a bit but the point is that I have probably shaved off several days worth of work simply by asking for advice.

I am biased towards Xojo, naturally, as it’s been my primary development language for fifteen years.  I think I’d be hard pressed to find such a friendly community.  I call many on the forums my friends even though I’ve never physically met them.  The few that I’ve met in person have lived up to their forum reputations and are really friends for life.

So maybe this is my belated Thanksgiving post.  I am thankful that so many years ago I jumped both feet first into the tool.  I asked questions – many of the silly and redundant.  I became more proficient and then made another jump to start blogging about it, making products for other developers, and training the next generation of developers.

So if you are in need of a cross-platform development tool I highly recommend Xojo.  It ain’t perfect but no development tool is.  If you jump in I think you’ll love the community.  I know I do.

What say you fellow Xojo developers?

Happy 50th Birthday Star Trek!

Today is the 5enterprise-movie-facebook-timeline-cover-photo0th anniversary of Star Trek.  For many people it inspired us to be better people and get involved in technology.  I think I can say with some relative certainty that I would not be who I am today if I had not watched Star Trek.

I am too young to remember when Star Trek originally ran but it was a staple of syndication by the time I was a youngster growing up in rural America.  This was a time before satellite television and we had only four channels (the horror!).  Star Trek was on every Sunday afternoon and it quickly became a must-watch show in our family.
One of my fondest memories was going to my grandmothers house and watching Star Trek with my cousin.  She was the only family member that had a color television and she was content to let us watch “that show” as long as we relinquished control before the Lawrence Welk Show came on.  Good times, let me tell you.

I recently attended the World Con convention in Kansas City.  This is one of the big science fiction and fantasy conventions of the year where the Hugo Award is given out.  Think of it as the Oscars for SF and Fantasy writers/readers.  I attended quite a few writers panels where panelists brought up Star Trek as being a major influence.  It was surprising to find that authors that I admired had the same influence as me.

Star Trek is part of the pop culture now.  Who doesn’t know what a Vulcan or Klingon is?  It’s what every show about space travel is compared to in some way.  The impact it has made on our culture is huge.
Star Trek is surprisingly liberal when you think about it.  It was where liberal ideas got presented to a conservative audience in a way that was palatable.  It made a huge difference in the lives of many people.  Black men and women saw Uhura on the command bridge doing real and important things and no one (on the show at least) cared that she was a woman or black.  As a kid I didn’t know it was a big deal that Kirk and Uhura kissed.

Star Trek and its subsequent followup shows talked about the politics, religious, and social issues of their era.  Of course you didn’t know it at the time – it was just entertaining – but like any good science fiction story it explored the grey areas of the day.  In my opinion, science fiction is the last remaining political and social commentary avenue available for modern era writers because it’s not about ‘us’ it’s about the future or some alien civilization.  It’s easier to see the injustice when it’s not about present day us.

There are other numerous examples of how Star Trek predicted the future, or perhaps helped change the future.  Automatic doors, cell phones, tablets, talking computers, and any number of other ‘futuristic’ technologies in Star Trek are now commonplace.  Imagine what the next fifty years will hold for us technology wise!

The other thing that I love about Star Trek is that it gives us hope for the future.  A future where we’ve learned to work together for the greater good for all species.  To not ignore our differences but to embrace the diversity of ideas that we all bring to the table.  To use technology for good things but also be wary of its abuses.

Happy Birthday, Star Trek.  Let’s hope the next 50 years are as fun, memorable, and thought-provoking!

Imposter Syndrome

Today I’m going to talk about the Imposter Syndrome.  That feeling that says everyone knows you’re faking it and they’re going to find out, at any minute, that you’re a fraud.  You’ll be cast down into the depths of despair in humiliation because EVERYONE WILL KNOW YOU SUCK!

I’ve experienced this feeling and I’ve had conversations with developers I greatly admire that struggle with this too.  This is both heartening because it means we’re not alone in this despair, but it’s also sad since that means there’s really not a point where you’ve ‘made it.’
Feeling like an imposter doesn’t go away as you gain experience but it’s not as big a deal.  With more experience you know the things you know and have hopefully gained enough knowledge and wisdom to know where to start looking for the things you don’t know.  Still, sometimes, you have to fake it.

Wait, fake it?  Yes.  Sometimes you have to be an imposter.  Let me use a poor analogy to explain it a bit more.

When you start a new video game you just start playing, right?  You know a few rules and as you progress you make mistakes.  You learn from them and at some point you level up.  This comes with a fancy cut scene showing your character victorious over the foe, gaining an object of some value, and gaining experience.  Your character is more wise and capable of doing more things.  You were up for the challenge and overcame the barriers to the next level.LevelUp

Being a consultant and software developer is no different than a video game.  You have to play the game to learn the rules.  The consequences of not learning the rules can be disastrous but hopefully you’ve done your research so those rules don’t kill you (metaphorically speaking, of course).

At some point you level up from time and experience doing consulting and programming projects.  Sadly, there is no amazing cut scene with dramatic music since we rarely, if ever, see the level up process.  It’s shame really because I’d really like to have dramatic music just play from nowhere and obtain some cool device from my endeavors.  But I digress.

For a Xojo consultant, like myself, it’s knowing parts of the framework really well and realizing that I don’t know some parts as well.  I do a ton of small example projects to learn those bits better.  It means creating my own tools to make my daily life easier.  Those tools involve ActiveRecord, and Shorts to name a few.  These were not developed overnight but over the period of a decade.

So the next time you feel the Imposter Syndrome hitting, recognize that it’s a natural part of the process.  You leveled up without noticing and that’s okay.  You can handle it.  It means you’re winning.

XDC 2015 Recap

The Xojo Developers Conference is my favorite week of the year.  It’s where I go to renew friendships, make new ones, talk to potential clients, learn from other Xojo developers, and learn what Xojo is up to.  Along the way there’s usually a surprise or two and this year was no exception.

The first surprise from XDC was that all sessions were recorded.  All attendees will get access to the sessions.  Currently it’s unknown if they will be available to the general public for free, or for a fee.  During the wrap-up session several people gave an impassioned plea to make these available to everyone at no cost.  The argument is that their experience with other conferences showed attendance actually goes up after releasing session recordings.

Not really much of a surprise since they’ve been telling us this for over a year now, but 64 bit builds are coming in 2015 R3.  This is indeed welcome news in a  software world that’s quickly becoming 64 bit.  From what I gather from people way smarter than me (insert joke here) is that 64 bit won’t really change anything in our apps and won’t give us much, if any, enhancements, and will make some things slower.  As Geoff joked at the conference, let’s hope that 128 bit computing doesn’t come any time soon.

Drag and Drop for web applications is coming for R3 as well and I expect this to be a big deal.  There are just some times of applications that do well with a drag and drop environment.  Think graphical editors where you have an object that you select and move by dragging it.  The current web framework has drag events but they should absolutely not be used – ever – since they don’t really work like we expect.  Drag and Drop might very well be my favorite news from XDC.

Raspberry Pi apps built using Xojo.  I think this is a wonderful addition to the product.  Raspberry Pi is a hugely popular processor because of its price and it’s used in a lot of places.  Hobbyists and the DIY crowd really like it and I’ve seen more and more ‘professional’ level projects with them too.  Heck, my sons 3D printer is run by a Raspberry Pi.  The XDC crowd didn’t react much to it when they announced it but as the week went on it came up in conversation more and more.  What a great way to introduce Xojo to new developers!  Really, the only question that’s come up is how much will it cost?  We already know it will be part of the Pro license but what about those that don’t need all the other stuff?

One unexpected surprise was the mention of the long deprecated and removed SpriteSurface and SuperSpriteSurface.  It seems that more than a few people got their start in Xojo/REALbasic developing games using it.  SpriteSurface wasn’t a great class, in my opinion, but it was enough to get started and getting people exposed to the language.  Perhaps we’ll see a Son of SpriteSurface in the future?

One thing that I expected to hear more about but didn’t was Auto Layout.  Norman had a session on it but other than there wasn’t a mention of it anywhere.

This isn’t a surprise because I’ve been many XDC’s now, but the official evening events are usually a lot of fun.  This year there was a mystery dinner theater that most found entertaining but the river cruise to watch the bats come out at dusk was awesome.  What goes on after the official events is even better as clumps of developers go exploring and Austin is a great place for exploring.

I encourage you to go to an XDC.  It’s a very nice event where you’ll learn a lot not only from the sessions but from those attending as well.  No word on where next year’s XDC will be. The cities under consideration:  Seattle, San Antonio, Miami, New Orleans, and I believe San Diego.  If you have a preference, be sure to let Xojo know.

So that’s my recap of XDC 2015.  Did any of the news surprise you?  Anything you expected to hear more about but didn’t?

Nest – The Learning Thermostat

One of the things that has annoyed me for a long time is my thermostat.  For something that is so critical to my creature comfort and is such an obvious energy user it really is a ‘dumb’ device.  Well, that’s not entirely true because while we have a ‘programmable’ thermostat but it isn’t very friendly or easy to use.

It’s very hard to read since, like every thermostat I’ve ever owned, it’s in a dimly lit part of the hallway, it has tiny buttons, and to program it you need to find the tiny  piece of paper covered in tiny script and learn how to program the thing.  Programming is like reading, understanding hieroglyphics and programming in assembler language (my apologies to those that understand both hieroglyphics and assembler!).  There HAS to be a better way.

Enter Nest, the Learning Thermostat from Nest Labs (www.nest.com).  It promises to be the iPod of thermostats and save your money by making your thermostat smarter and simpler to use.  So far it’s too early to tell if it will save our household any money (the weather is comfortable without heat or air conditioning this week) it is definitely easier to use because it has a gorgeous interface and anyone familiar with an iPod will certainly be able to figure this thermostat out.

At $249 it seems a little steep but considering all that it does I think that’s a good price.  Considering that a high end programmable thermostat can be roughly $100 it doesn’t seem that expensive, in my opinion.  I’m sure there are plenty of people that would balk at the price but if you can save a little money each year because you can actually use it?  I think it’s worth it.  If you feel differently, please leave a comment.

Our household has been an Apple stronghold for many years.  The initial experience with unpacking the Nest is very much like unpacking an Apple product.  The Nest comes with easy to understand instructions and includes stickers to put on your existing wiring and even a multi-tip screw driver to uninstall and install your new thermostat.  It really is an all inclusive kit.

I found installation to be pretty easy and it took me less than 30 minutes.  The initial power up and setup was easy to understand and follow.  Using the dial interface to connect to my wireless network is a little tedious but since you only have to do it once it’s not so bad (assuming you only have to do it once).

Here is where my story deviates a little.  My Nest came with firmware 1.1.3 installed and while it connected to my wireless network it never was able to connect to the outside world to download updates and get weather updates.  After fiddling around with the Nest and my wireless router (and Airport Extreme) I called Tech Support.

I found the Tech Support people very knowledgeable, and personable, and they definitely knew what they were doing.  Unfortunately I was trying to get this done in amongst other work so my tech support was really over the period of 3 phone calls and in each case the gentlemen I talked to were very helpful and very apologetic for the problems I was having and were obviously keeping notes in my ticket since the last Tech finally hit upon the fact that the firmware was still at version 1.1.3.

The final result was that I had to disconnect my Nest from the mounting and plug it via micro USB into my Mac where it appeared as a regular removable drive.  The technician directed me to a URL to download version 1.2 of the firmware and copy that file to the Nest drive and then plug it back in to the Nest base.

Sadly this didn’t take the first time and the unit never restarted on its own.  I was able to restart it, restore it to factory conditions and do the upgrade process again and it worked.  As soon as I connected to my network it connected to the Nest servers and it even let me know it was connected to my account (the techs had input my serial number) with no work from me!

So now my Nest is working and I can control it via my iPhone or iPad even while I’m on the road!  It has some nice energy tracking functions on it that I hope will pay for itself in the next year or so.  It also has a learning mode that will be interesting to see how well that works.  Currently it’s warm enough so the furnace won’t come on but not hot enough for the AC to come on either.

A few other observations:  The display is gorgeous and easy to figure out.  It has no battery and simply uses the power from the existing wiring which is quite different than any other thermostat I’ve ever owned (with the exception of the most simple ones).

My installation experience was quite good minus the firmware problem.  If you have any sort of physical skills you should be able to do it yourself.  If you are not exceptionally tech savvy getting it connected to your network might be problematic but otherwise it ‘s simple enough.  I have to give the tech support folks kudos as they were very polite throughout the entire process and said that the network settings were often the cause of tech support issues.

Have you had any experience with a Nest Thermostat yet?  What can you share about installation and setup?

Crazy Month

It’s been a while since I’ve posted something.  There’s a reason for that.  First, business is good and all of our developers are busy and will be busy for the winter.  That’s an awesome thing!

My Nigeria trip at the end of September really put some work on hold until I got back.  Thankfully I have some really cool (and patient) clients that are flexible in their schedule and were accommodating to the change in schedule due to travel and as a couple of emergency projects showed up.

Then we sold our house that had been on the market since June.  Then we bought a house (24 hours later).  And then moved out (and in to the new house) less than 2 and a half weeks later.  Even our Real Estate agent (who does 120 homes a year) says that this sequence is fast, fast, fast!  The one positive note is that the movers complimented us by saying we were “really organized” and I’d say so as in less than 48 hours we are about 85% unpacked.

Prospective clients keep showing up and asking for quotes.  There are a LOT of people asking for quotes from us to take their VB6 applications and rewrite them into Real Studio.  Most are scared away by the price (because there are no conversion tools so it’s really a rewrite) but a few have been serious enough to continue the conversation.

It really is a good time to be a Real Studio developer.  Every developer I know is busy and that’s a really good thing.  If you are not part of the Real Software Developer Referral Program you should be as it’s a great way to get leads.  One project and it pays for itself.

I barely have things unpacked from the house move and I’m off to the Real Studio Database Days training in Frankfurt, Germany where I’ll do a short presentation on our ActiveRecord implementation.  I must be crazy.

Steve’s Legacy

Steve Jobs changed my life – literally and figuratively.  It’s been a long journey even though I feel like it’s just getting started.

My first exposure to an Apple computer was my friend Mike.  His parents owned a machining company and were using an Apple II for a bunch of business things.  We used it for games – and my, oh my, what fun those games were.  Of course they’re pitiful compared to todays games but they were outstanding for their time.

Because I couldn’t live and his parents business (though I mightily tried) I found other sources.  Even though I was in high school, I got permission to use the one (!) Apple II at the elementary school (my school was small – it was all one building) where I did my first programming by creating a Dungeons and Dragons character creator using Apple BASIC.

Then I went to college where I was surrounded by DOS machines.  It was an engineering school and these things were everywhere.  When I got drafted to publish a parents newsletter for my fraternity I discovered the two little dinky Macintosh Plus computers in the corner of the computer lab, a LaserWriter printer, and a piece of software called PageMaker.  My love affair with the Macintosh began.

And it continued to grow.  I learned PageMaker, FreeHand, and Persuasion like the back of my hand.  I worked for a company called MacTemps and made good money using those skills and worked my way through college.  While my engineering contemporaries were doing their reports and graphs by hand I was turning them in on laser printed paper.  What took them hours to prepare took me one.

I remember vividly my first Mac Plus and my first Mac SE.  I was passionate about those Mac’s.  I have no doubt my fraternity brothers were bored of me extolling the virtues of using a Mac.  Well, I was right, wasn’t I?

I went to a Mac users group conference in Ann Arbor, Michigan (circa 1988) where I saw my first 1 GB hard drive the size of a suitcase.  We were all wondering how we’d fill up a hard drive that size.  This is also the same conference where I shook Bill Gates’ hand just before he walked on stage to deliver the keynote speech (at a Mac conference remember).  Microsoft wasn’t always the anti-Apple company – MS Word and Excel were pretty slick back in those days.

Since college I’ve owned many Mac’s.  A Mac II LC (the pizza box Mac), probably something from the Performa line, a G3, a G4, a G5, several of the all-in-one iMac’s, a PowerBook laptop, a G3 laptop, a MacBook Pro, and a MacBook Air.  These machines helped convert me from an engineer to a programmer.

In my early consulting days I had a crappy Dell in the corner simply so I could use Visual Basic and Access.  Now days I simply fire up VMWare or Parallels (depending upon computer) and use Vista, Win7, XP or any number of Linux distro’s.

I resisted the iPod, at first, thinking it was a crappy name and Apple wasn’t an electronics company.  But when the iTunes music store showed up it changed my mind and how I bought music.  I now buy more music without ever leaving home.

I had resisted using a cell phone for years but finally gave in when I got married.  My cousin gave me an old HandSpring Palm phone which lasted for years.  When the iPhone came out I willingly jumped in because I figured it had to be better than the Handspring phone.  My oh my, was it ever.  I think we’ve owned every generation of phone since and I don’t leave the house without checking to see if I have keys, wallet and iPhone.

Like the iPod before it, the iPhone changed the way I purchased software.  No longer did I need to go to a store to browse software boxes.  Now, I go to an app, browse the selections, read reviews and then purchase and download it practically instantaneously.  What a game changer.

When the iPad came out there was never any question of getting it.  We were already big iPhone users and to start with several hundred apps without buying anything?  It was a no brainer.  No reason not to get it.  It’s now used daily.  It goes with us on trips (of any type) and like the iPod before it, it’s changed the way I consume books.  I now purchase books without ever going to a brick and mortar store and I read more than I did before.

So this is a big thank you to the man I consider to be the biggest tech visionary of my time.  He started from humble beginnings and created, several times, new markets where others followed.

I could certainly argue that Microsoft would not be the company it is today without the Macintosh influencing how it did Windows.  The music industry resisted online sales until Apple proved they could make money on it.  The entire cell phone industry is undergoing a complete transformation now because of the iPhone.  The tablet market is undergoing a radical shift because of the iPad.

And that’s just Apple.  Steve bought a little company called Pixar that did computer animation.  It had a string of blockbuster movies that weren’t just about the animation it was about telling the story.  Many imitators have followed.

Even before that, when he got pushed out of Apple, he never stopped trying to think outside the box.  He helped found NEXT computer.  It was an awesome computer for it’s time but too expensive and it never took off.  But it was a NEXT Computer that was the first web server.  And it was the NEXT operating system that Apple used to reinvent itself after Steve came back.

Steve Jobs unique.  He was an a**hole to some and inspired intense loyalty to others.  His leadership style was unique and he was a consummate salesman showing us not what we asked for but what we were really looking for.

He died too young.  Or, he died after accomplishing much more than most.  He did ‘insanely great things.’  And we will miss him.

A Van For Joanne

The Real Studio community is a pretty tight-knit one.  Once you’ve been using Real Studio for a while the same names keep popping up over and over again.  So when one of us has a problem (usually in code) many people come to rescue.

We have one long-time member of the community that’s in need of something different, however.  Christian Miller, the owner of Pariahware, has a particularly dire need.  His wife, Joanne, has been in the hospital and in long term nursing care after a series of dramatic health incidents.

It started back in February with several strokes.  In April she had so many they couldn’t track them.  Doctors thought she would not survive and in May the family was preparing for a funeral.  She was unconscious for months.  Through constant faith, and prayer, she woke up from the coma and is slowly recovering.

I’m not much for miracles, but Joanne’s story of recovery remarkable.  She still has a long struggle in front of her.  You can read more about Christian and Joanne at http://pariahware.com/blog/?p=414.

To get her home, they’ll need a van that is wheel chair capable.  Crippling medical costs have made this very difficult so they are asking for our help in donations to get a Van for Joanne.  I urge you to dig deep and donate what you can spare (and maybe a little more).

I would like to think that the RB community can help one of their own.  We’re a small and vibrant community.  If you can’t donate any cash to the project, I’m sure that they will appreciate your prayers and thoughts for a steady and permanent recovery.  You can follow the Donate button below to help out.

Click here to lend your support to: Van For Joanne and make a donation at www.pledgie.com !