FHU Mobile for Android

by Andy Maach
February 3, 2012 4:10 PM

Our green robot friend is taking over the world! Okay, that’s slightly dramatic, but Android’s usage share is increasing by the day. According to Google’s Andy Rubin, there are 700,000 Android phones sold per day. Additionally, according to comScore Android currently has a market share of 46.9%, relative to the iPhone’s 27.3%. Without a doubt, Android will be very important to the smartphone landscape for quite some time. Because of this, it is very important for Apps to be present on Android as well as the iPhone.
If you are reading this blog, chances are that you are well aware that Freed-Hardeman has its very own App, FHU Mobile. What you may not know is that Android is getting its very own FHU Mobile. This is quite an undertaking. In my past work, friends have asked me to bring Android apps to the iPhone. What most people don’t realize is that Android is very different from iOS (iPhones, iPods, and iPads.)

Imagine you’re given a book with many pictures and such that is designed for a very specific culture and language. Your task is to not only translate this book, but also get new pictures and other resources appropriate for the culture you’re bring it to. For example, if a Chinese book were brought to America, even if you translate the entire thing to very good English, it’s still going to look like a Chinese book. This also holds true for bringing iOS applications to Android.

That said, many things in the iOS app will be changed to “fit in” well with the Android system. Android users may be familiar with sliding tabs. With the Android App, plans are to change the news feed list and the admissions page to use these sliding tabs. Additionally, the tab bar at the bottom is removed. Instead, current plans are for the home page to have a grid of options (consider the Google Plus app or Evernote, for example.) In addition, we expect that several other GUI changes will be present, but those details will be finalized at a later date.

We expect that FHU Mobile for Android to be released sometime late Spring. Until then, here’s a snapshot of the current development!

Time Management: A Student's Perspective

by Lance Williams
January 27, 2012 8:23 PM

As a college senior I have found that perhaps the most important ability you need to have in college is managing time. As a student you have so many different things going on, such as classes, class work, professional clubs, social activities, sports, and of course just chilling with friends, and it's important to be able to balance these.

I have found in my time here at Freed that the best way to manage time is by using and staying faithful to Google Calendar. Google Calendar is another one of Google's many free products that just make life easier. It allows you to schedule activities, but visually. You mark the time you have scheduled meetings as "blocks" on the grid view of the calendar. This allows you to literally see the amount of time on your schedule. With Google Calendar, you can classify different blocks as different types of activities, by giving them different colors. You can also add tasks, for assignments, or just things you need to accomplish throughout the week. You can even share your calendar with other people, so they can see when you're busy or free. And the best thing, as always with Google, is it lives in the cloud. Once you create your calendar, you can access it from any device that allows you to sign in with you Google account. If you have an Android device, your calendar is instantly synced to your device every time you make an update. If you aren't using Google Calendar now, I highly suggest it - it truly makes life simpler.

FHU Mobile for iPad

by Ethan Kershaw
December 9, 2011 7:50 AM

Earlier this year, the FHU Mobile iPhone app was released and plans were made that an iPad version would also be made. Work has begun on this iPad app, and will be continued next semester in the Advanced Topics class. So far, work has been done on the photo gallery, campus map, and news feed portions of the app. My group has been responsible for the news feed, and it is intended to present the information from our social graph in a style that utilizes the larger screen of the iPad. Next semester we will be taking these three pieces and combining them with the other capabilities you can already find in the FHU Mobile app, such as the directory and forms.

The most difficult part of this application so far has been understanding the workings of Objective-C and the iOS platform. While Objective-C is a popular language, it is very different from even the languages it is most closely related to. iOS is a powerful platform, but it definitely has its nuances and complexities. I believe that every student that works on this FHU Mobile for iPad project will come away with increased application development skills, and valuable experience in one more language and platform.

Hello World in Node.js

by Michael Clark
November 18, 2011 10:59 AM

Node.js has been one of the latest buzz words in the development community, but what exactly is it? Node’s community wiki calls it a server-side JavaScript environment that uses an asynchronous event-driven model. I’ve been interested in learning more about JavaScript and the server-side statement was enough to pique my interest to learn more.

Since this is going to be an introduction to Node piece, we’ll go through the traditional “Hello World” piece. Here’s a snippet directly from the Node website that creates a web server which responds to every request with “Hello World” –

var http = require('http')
http.createServer(function (req, res) {
   res.writeHead(200, {'Content-Type': 'text/plain'});
   res.end('Hello World\n');
}).listen(1337, "");
console.log('Server running at');

Let's go line by line and explain what's going on with these 6 lines of code.

The first line, according to the Node API, is required in order to use the HTTP server and client. It essentially includes the http library similar to how you might include the System.IO namespace in C#.

The createServer function is from the http library and takes a callback function while returning a new server object. In this case, the callback function is listen. The listen function takes two parameters, but only one is required. In our case we provide both - the first one is required and is the port to listen on and the second is the hostname URL. 

The meat of the createServer function has two calls - writeHead and end. The first call, writeHead, has a couple of arguments we can pass in. The first argument is the status code of the request (200 or OK in this snippet). The second is an object containing all the response headers we'd like to set (we're just setting the Content-Type header here). The end call allows us to pass in the string we'd like to print out (Hello World) and signals to the server that the response is ready.

The last line prints out a simple message to the console that lets us know the server is running and what it port it's listening on.

Pretty straightforward, isn't it? If you're interested in seeing something in action, check out the Node chat room. Both the client-side and server-side were written in Javascript.

My last post was on crawling FHU.edu and what got me interested in Node was an article on scraping web pages with Node.js and jQuery. I may try that out sometime when I get the chance - especially since Node now runs in Windows natively as of November 11.

Windows 7/8 vs Mac OS X

by Michael Plyler
November 13, 2011 6:54 PM


Windows 7/8
by Lance Williams 

When it comes to the debate of Windows 7 vs. OSX, I’m a windows fan all day everyday. Now it is only fair to say that I do have a lot of bias, being an avid apple hater, however having tried both operating systems extensively I must say that I prefer Windows 7 far above Lion (or any version of OSX for that matter.

When I enrolled at Freed I had to join the iKnow Initiative which is basically a program in which all student received a Macbook and their choice of an iPhone or iTouch. The Macbooks came with both Windows Vista and Leopard installed. If you’re the type of person interested in an article such as this I’m going to assume you already know the many criticisms of Vista, and will then understand exactly why I decided to give OSX a shot. 

Let me first say that OSX is a good, stable, and FAST operating system. But first and foremost, OSX has incredible battery life. As I was using Leopard I thoroughly enjoyed the speed of booting up my computer, the ease of searching for files, and most of all the amount of time I could spend without being plugged into a wall. 

My problems with OSX started with Xcode. In my first programming class we were learning C++ and for the life of my I could not get Xcode to play right, so I would begin to boot into Vista for each class, then reboot into OSX after class. Now if you’ve used Vista, you know that the bootup times for it aren’t the most friendly of things, therefore after a few class periods I just decided to stay in my Windows side.

Well about this same time the Release Candidate of Windows 7 was released and anyone was free to install and test out the system. Not exactly being in love with Vista, I jumped on the chance to do this and I was instantly pleased. 

I was raised on Windows, and I know Windows the best. Windows 7 was everything Windows was to me as a kid, with added features and speed, while looking great in the process. And the best part was being on Windows, as opposed to OSX, opened me to the vast library of free programs for Windows computers. The features of OSX which I loved the best (Expose and Spaces especially) were easily added to my Windows side due to free programs that not only copied these programs, but also improved on these programs. 

Pretty much the reason why I like Windows better is because everything I can do on a Mac, I can easily do on my PC. Whether it be through add-on programs or built in features, Windows 7 can match everything OSX brings to the game, while still being the operating system that many of us were brought up using. Now I’ll be the first to say that Microsoft has some serious competition on their hands from Apple, but in my opinion mainly in battery life and marketing. I feel that when features, ease of use, and openness are compared that Windows is definitely the way to go. These are my opinions, and I’m sticking by them. 


Mac OS X Lion
by Zachary Rose

OS X is my primary operating system of choice. I began using OSX because when I joined the iKnow Program, the Windows notebook I had was much slower in comparison, and I have gotten used to it. I must say though that I am impressed by Mac, and I have not had much motivation to switch back to Windows. The improvements Lion brings to the table definitely reinforces that.

Lion’s myriad of new features are pulled off well. Because there are so many great new features, I’ll only discuss my favorites. I encourage you to visit Apple’s site to see the full list. Full Screen Apps do exactly what’s implied; it’s not a brand-new concept, but it is nice to be able to make more than just my browser full screen. Mission Control combines the new functionality of full screen apps with Spaces, Exposé, and Dashboard. Mission Control can be opened with the same shortcut as Exposé. It is convenient having all these available in one place, and helps make full screen apps more practical.

Another great set of features is Autosave, Versions, and Resume. Autosave automatically saves any document you’re working on, so long as it has been saved by you previously. Versions allows you to go back and compare older versions of any document you’re working on. You can also duplicate the document and continue working on it as a template for a new document. Resume restores the windows after you quit a application or even restart your Mac. As soon as you start the application or boot up your Mac, you’re right back to where you were. These three features really make saving and restarting simple. 

Lion does, however, have some pitfalls. First, Lion has much greater system requirements than Snow Leopard. When leopard was released, the Macbooks that shipped with it had twice as much RAM as was required. Then, when Snow Leopard was released, the requirement was doubled to 1 GB of RAM, which was fine-- my white 2008 Macbook had 2GB, and handled that upgrade well. Now, with Lion’s requirement of 2 GB of RAM, my Macbook feels pretty sluggish at times. Another requirement is that Snow Leopard must be installed and updated before installing Lion. This was not a problem for me, but I can imagine the frustration of having to pay for Snow Leopard simply to be able the operating system you actually wanted.

Many of the new features are unusable in older Macs as well. For example, AirDrop only works in certain Macbooks that are listed on Apple’s website. Airdrop seems to depend on the AirPort Extreme wireless card, so if your Mac is not compatible with that, then it can’t use AirDrop; other than that, Apple gives no full explanation on their site why AirDrop won’t work at all with older AirPort cards. 

Of course, some of these setbacks are reasonable; hardware quickly becomes outdated these days. Should Apple necessarily make every new feature work on every Mac ever produced? And in light of all the advancements in Lion, I think this is a excellent improvement to an already great operating system.