Systems, Strategy Russell Mickler Systems, Strategy Russell Mickler

Fairwell to Small Business Server 2003

It's the end of an era: I downed the last Microsoft SBS 2003 today in favor of Google Apps. What was once a flagship Microsoft staple has been consumed by the crocodile of time.

Today I spent the day de-comissioning a Microsoft Windows 2003 Small Business Server (SBS). It was the last SBS server any of my clients had still in production and the last SBS server license anywhere on my active client list. I turned it off today and probably for the last time.

Okay, what's the big deal? It's the end of an era for me. Awww sniff sniff

I've been working on SBS licenses for over a decade. It was the entry-level machine that so, so many companies replaced their old Windows Server 2000 or even WindowsNT 4.0 servers with.

SBS provided a small business with affordable security management, file sharing, shared mail/contacts/calendars, a database service, and reasonable backup solutions. It was almost everything any business needed out of the box. It was an awesome revenue source for Microsoft as small businesses everywhere needed that affordable capability. SBS installations were everywhere.

Sadly, the Windows Server 2012 platform doesn't include an SBS licensing model and small businesses are expected to pay a premium for similar functionality with full licenses for domain management, Exchange Server, and SQL Server.  That's totally cost-prohibitive to the small business, of course, to own a full-scale Standard server and all of those classic services so there's no real equivalent today. Microsoft would encourage people to purchase a workgroup server called Foundation Server, or, sign up for MsOffice365 and an "Essentials" server ... and what a broken load of crap that is. It's like Microsoft gave a big index finger to small businesses everywhere.

Well, so long, SBS 2003. You've been replaced by faster, less-risk, web-based, centrally-managed cloud products, and not even with a Microsoft logo but a Google Apps logo. Microsoft has abandoned you, and well, we - in the small business support world - have abandoned Microsoft.

Kinda represents the things to come, I think.

Soon, I'll likely replace the office productivity applications and Windows operating systems on the client computers with something other than Microsoft products, too. 

Hey, Microsoft: I can see a time without you. Do you hear that? The sound of a tick-tock-tick?

R

Read More
Management, Systems Russell Mickler Management, Systems Russell Mickler

Assumptions Are The Enemy

Small businesses suffer from big assumptions when it comes to their IT spending. The best management practice questions assumption and validates capability. 

image.jpg

As a technology professional, you'd think that my daily problems concern hackers, viruses, and glitches. Actually, that's not true. My biggest problems concern assumptions.

Owners and managers of small businesses will assume that their systems are secure; their backups are being performed; their policies and procedures for managing IT are working; that what they're doing today is the best strategy for tomorrow.

I like to work with people and organizations that question their assumptions and push in to their own comfort level to see how things really are. Proving or invalidating assumptions is just good management practice, but it's the only way to verify and improve upon your technology investment.

R

Read More
Systems Russell Mickler Systems Russell Mickler

More Progress on Swift App - SQLite and TableViews

More testing and creation of an iOS app. Good results today, manipulating SQLite and creating a tableview from a query.

gif_contacts_v2.gif

More progress was made on my application today and, wow, it took me about six hours to do this, but I finally got it ... 

The animation doesn't really do the code justice, but what it's doing is:

  • Opens a Navigation Controller with the FMDB overlay for accessing SQLite structures - this will allow me to access a SQLite dbase and populate a TableView.
     
  • It looks for the dbase in the documents directory of the current user and, if it exists, drops tbl_contacts, re-creates tbl_contacts, inserts some bogus records into tbl_contacts, and cycles through tbl_contacts to append to an array that's passed to the tableview. All so I can get a selection of humans, as you see here.

The hardest damn thing was to get the code right for appending the values read from the SQL query into an array:

 

 // And populate the array

if let rs = contactDB.executeQuery("SELECT * FROM TBL_CONTACTS", withArgumentsInArray: nil) {

                while rs.next() {

                    // self.contacts = [Contacts(name: rs.stringForColumn("txtname"))]

                    contacts.append(Contacts(name: rs.stringForColumn("txtname")))

                    println("Cycling -")

                    println(rs.stringForColumn("txtname"))

                    }

                } else {

                    println("Select Failed: \(contactDB.lastErrorMessage())")

                }

                println("I'm done cycling")

Anyway, it was crazy how long it took me to get the syntax right, but now I've got a tool to open a dbase, create a query, cycle through the query, populate an array, and pass it to a view ... huge progress today. Much happiness.

R

Read More