So Mavericks Server really made a mess in upgrading my Mac Mini from Mountain Lion. In the end, the Mavericks upgrade went well. Trouble began with installation of Server 3. About half way through ‘updating data’ the system would hang, and then get stuck in the old grey screen of death loop. Fixing permissions on the system folder solved the boot issue. Re-run server install, and bang! Same issue. Since I only care about the websites, I fixed the permissions again, then renamed the server folder. Created a new server folder and copied in the contents of my existing web folder. This time the installer completed (without fragging permissions), and successfully migrated my data… assuming you’re reading this. I’ll worry about what it got hung up on later… or never. After all, it’s an OS migration. Didn’t expect it to be flawless.
In a post-PC world, my interest in computers and computer systems has been renewed by the abundance of low-cost, yet powerful devices that run variations of UNIX-like operating systems. Though I am working with the OSX GUI mostly, I find that familiarization with Linux helps me bridge the gap between Windows, Mac OS, Android and allows me to identify and manipulate – copy/modify/etc – shared code. Though individual command syntaxes vary greatly, their purpose as it relates to interaction of software/hardware components shares a similar logic. Each process; each subroutine; each byte; can be identified and replicated on the other platforms…
Using a universal or unifying language can deliver the convergence of technology/device that major vendors have missed when evolving their market strategy around “the cloud” – what’s it all about? In the end, it’s about access to information.
Today we begin our preliminary research. Since we have very short attention spans and plenty of disruptions, we figured we’d begin by learning about the project board that should be arriving this month. We’ve decided to delegate tasks and responsibilities for our project: Liam to learn about Arduino boards (what they are, what they can do) while I will be responsible for design and assembly of whatever components we cobble together.
In the end, we wound up spending more time watching Ice Age 2, but at least I have proof that for five minutes, Liam sat still.
So learning cli commands for multiple operating systems simultaneously is reminiscent of taking french and spanish in school. Twenty years later, and I speak neither. Thankfully, ‘unix-like’ pretty much means that someone already wrote a conduit, recipe or package for your favorite tool. How I managed to not totally blow away my system messing around with brew, fink and an assortment of other package installers before I got my bearings, I’ll never know. Not quite ready for Gentoo, but I’m starting to get the hang of Arch Linux. I see a raspberry pi in my future. By the looks of things it’s like the microcomputer equivalent of the swiss army knife. Looks like you can set one up as a universal repeater/plex media center client which would be handy on vacation…
And here’s the proof that more of out customers are using Macs than ever before:
I noticed recently that the site was down and had to monkey with something on the server…permissions? Always permissions. Nevermind the OS or security method, it’s always permissions. Lost the mirror drive in the software RAID, and that seemed to mess things up after recreating the mirror on a replacement drive.
I was messing around with Linux a bit recently, and setup some code on my router. I noticed that since I’ve enabled additional firewall(s) through Optware I don’t seem to be getting any visits from the Russian bots. I wonder when the site went offline exactly? DDNS….etc etc etc etc and I never look.
I’ve been working on some method to keep track of office tasks/requests which would allow me to automate logging of completed items for documentation, future research and task management. Increasingly, I am finding automation technologies useful in building workflows. On OSX, Applescript, Automator workflows, and cron jobs, launchd services for Linux based systems and good old scheduler (at).
I really need to find the discipline to get some classroom training on current programming language syntax and structure. I’ve got all the tools I need to write, debug and compile any code I want (within reason) – I simply lack the time to…. good excuse writer.
Before I went off on the tangent, I was referring to task automation as a useful tool in managing my personal work flow. Since I am inherently lazy/busy with endless interruptions and an unpredictable schedule, I am always thinking about disaster recovery/business continuity on a continual basis. Sometimes (when minor failures are easily recovered), this validates the need for building system architecture that is simple, cost-effective, scaleable, redundant, well documented, and easily replicated or restored following some contingency. Other times, it feels that nothing is ever completed; projects are not completed in a timely fashion, new challenges are being introduced faster than I can document them (never mind dealing with them).
Since business objectives mandate system requirements, it is necessary to support a wide range of system architectures ranging form proprietary IBM AIX systems that are not fault tolerant nor capable of virtualization to more mainstream Windows-based systems and other platforms such as OSX, iOS, Android, and various Linux distros for various devices and systems. Task automation and scheduling procedures differ greatly from one device to the next. Programmatically, the logic to accomplish basic tasks like task management, note taking and reporting should be similar all around. A unifying language such as java should be easy to code to accomplish various tasks and interface in standard database formats/sync protocols (mySQL,SQL,etc/cardDAV,calDAV, IMAP, LDAP, etc). HTML5 could be employed to skin the interface for mobile devices, or the GUI interface could be ported to various platforms.
While AD offers a lot, it is still closed architecture and often presents challenges in providing authentication for other operating systems and devices… but that’s a subject for another day