So looking at my blog and I notice I haven’t actually posted anything on here for a VERY long time. A lot has happened since I posted last. 1MB has been busy project after project; setting them up and knocking them down.
Probably the biggest news is that I have moved to California and now work for Stanford.
What a great place to be! Its sunny and I am surrounded by technology. Google, Nasa, Facebook, Apple… its like I am a kid in a candy store. The thing about this candy store is that I truly am a kid since I have never truly experienced the American system before. From my drivers license to healthcare it has been a wild ride.
I’ve also decided to go back to school full time; why not right? With a full course load, moving to a new country, starting a new job and running 1MB I had to neglect something; and i chose this blog. 🙂
At any rate; I think I can find a moment or two to dump some ideas into the world so stay tuned.
Writing this note today to mention my favorite ssh client for windows. My unix admin duties have required me to use ssh for years and I have tried many clients including puTTy, kiTTy, ZOC and secureCRT.
I have various problems with the mentioned clients as they don’t all meet my requirements.
My ssh client must:
- save credentials (not just keys although that is a good practice)
- save sessions
- have a tabbed view
- handle editors nicely with color including nano and vi
- allow one click or command line access
- integrate into windows nicely
- allow me to transfer files in and out over the same connection
I presently don’t use my ssh client for proxy type connections although I suppose that is a valid reason for many.
After many years I found Xshell from NetSarang (http://www.netsarang.com/download/down_xsh.html). It meets all of my requirements and comes with a 30 day eval or full school/home license.
For a long time I haven’t really used a code version control repository. For those that don’t know this is used for storing documents usually in the form of programming code that allows for multiple users to work on a project without stepping on each others toes.
There are a lot of different ways to do this and it really depends on what you are doing. It seems to me that the majority of developers have switched to using gitHub. I looked at github and it has all of the usual versioning stuff like branches/forks, tags and multi-user capability. It seems to be a bit more flexible in how it handles things. One thing that it doesn’t do is plug into dreamweaver. I’m not sure if Dreamweaver will ever include github but since they have support for subversion I can only imagine that they will have to build in git at some point.
Other versioning technlogy exists as well such as CVS and Team Foundation Server (TFS). I have used both and I can say things have come a long way since the olden days. TFS is a very mature Microsoft product best suited for .NET development. I think the closest thing to TFS in the open source world is git. I have to say TFS seems to be better suited to the task as it was very reliable whenever I had to use it.
After some investigation I found myself setting up subversion for the project I am working on as the other developers are using Dreamweaver and prefer to not change. This left me trying to figure out the architecture of the repository which has many other factors to consider such as the number of files and where the programmers are located (same site/remote). I also had to figure out the access methods that we are going to use. DW supports http/https/svn+ssh and svn protocol directly. For ease of use and security the only logical choice was https as the other programmers are remote and we require security. The other secure option seems like a real pain to configure in windows. So that all decided I was kind of locked into using apache as the web server as that method, when used with Dreamweaver, requires webdav which sort of dictates that we use mod_dav_svn on apache.
So it seems the IDE decided my fate for me. Since we use dreamweaver and are located at remote sites we had to use subversion on apache hosted remotely. We have selected a host, have our SSL certificate and are ready to build. I have also opted to install Jenkins to do the automatic package builds.
Now all I need to do is set it up.
Updated the theme on this blog for 2013. I’ve added the new scrolling feature so the site and made it compatible with mobile devices. I implemented my changes using a child theme and everything seems to be working great. I hope you enjoy the changes as well.
I figured out how to make child themes for wordpress. For the longest time I didn’t know they existed. What it allows you to do is take and existing theme and customize it to your liking (like removing the comments block at the bottom of the pages). When the parent theme gets updated you don’t lose all of your modifications and everything continues to work.
It is fairly easy to do. Just create a fold in the themes folder and create a style.css file with a specific header referencing the parent theme. Any changes you make to the style.css will overwrite the parent styles. To update files just copy them to the folder and make your changes.
I installed the Ice Cream Sandwich (ICS) update from Rogers onto my Samsung Galaxy II LTE. Overall it went well; I never really feel comfortable with firmware updates so I made sure to make a backup with Samsung Kies before I started. I also backup my phone to google just in case.
I had to restart the update several times until my phone was fully charged… After that it did its thing and rebooted a bunch of times connecting and disconnecting over USB. Then the wizard finished and my phone started to boot ICS for the first time which was getting me really excited until an error popped up on the screen and said it couldn’t communicate with the processor and froze. It remained frozen for 10 minutes so I soft reset the phone (hold power for 10 seconds). At that point it booted to the samsung logo and just sat on the screen for 1 hour doing nothing… several reboots and nothing… My immediate thought was crap I just bricked my phone.
So, I decided to hard reset the device and try to manually execute the firmware (hold power and volume buttons until the samsung logo shows up, then let go of the power button until it buzzes a few times letting you into a secret recovery menu).
My card was empty and nothing was mounted properly. Data was gone; no firmware update… wtf.
I decided to wipe the phone and factory reset it. After that… it booted! Amazing… It booted to the initialization screen you get when its a brand new phone. I had to reenter may gmail account and it asked if I wanted to restore from the cloud… I clicked the hell yeah button and the device proceeded to manually download and install every application that came from the play store (my other apps didn’t come down but I have a copy of those). After that I restored my backup and my photos and stuff came back. Everything was pretty much normal from there other than the annoyance of having to layout all of my screens again.
I recently migrated this site (and about 15 others) to our hosting platform. It was relatively painless but I don’t think I will do the WordPress site the same way next time.
I took the lazy admins approach to FTP downloading the files; taking a MySQL dump and then installing the same version of WordPress on the new server. After it was installed I FTP uploaded the files and forcefully updated the database to whatever was on the old host.
Surprisingly this method worked quite well. Except that a bunch of my hosts had some special characters in them (I guess I should have checked the collation a bit better). Also, after the upload I couldn’t actually post anything to the blog. Obviously I fixed it or you wouldn’t be reading this. I found that I actually had to deactivate and reactivate every single plugin that I have installed on the site; not sure why but it was required but that was all I needed to do.
In the future I will use the import/export tools that are available; I guess being lazy/creative I didn’t even notice those tools were available until it was too late and the DNS had propagated. Live and learn!
Seems fine now. Happy blogging!