If you've been on the internet any time within the last few months, you've heard that there's a new iPhone coming. Well at least, we think there's a new iPhone coming. As always, people have been talking about a new form factor for this new device, especially since people got the same form with the iPhone 4S in October. If Apple keeps with it's pattern-ish development scheme, we're due for one anyways. We have no way of telling what the phone might look like this time around (no prototypes lost in bars), however, the major thing that people are clamoring for on the internet is a larger screen. Personally, I'm not sure how I feel about it. I would like a larger screen as long as it doesn't change the size of the actual device that much. I'd like to still be able to fit my phone in my pocket (here's looking at you Galaxy Note owners).
In the world of file syncing and storage, we have a few options. You can take your files and put them on a flash drive and carry them wherever you go. You could upload them to Dropbox or Google Drive or whatever your cloud storage provider of choice is and then download them where you need them or use the official client. Those are all fine and good options, but I want something more.
I'm a big fan of git. When I'm working on my larger assignments, I like to be able to roll back or save my spot without messing things up (by the way did you know that github has free student accounts as long as you ask?). You can then push your changes up to github or bitbucket or your own personal git server or any of the above options. Then you have to remember of course to pull them back down to your personal computer if you've been working in the lab and if you have changes then you have to go through stashing them and applying them or making commits and merging. It all works fine but it's tedious and you can forget to do things and then you can mess up your whole project.
So here's what I want to do. I want to be able to sync my files regardless of the system that I'm working on automatically. That's the thing I really love about dropbox is that changes get pulled down on my mac as soon as I turn it back on, so if I didn't have it with me then I can keep working. Now I know for a fact that at IU, the cluster of computers that we have accounts on called the burrow runs RHEL and if you remember to enable X forwarding you can open up a window in firefox and upload your files to dropbox there. But what if you don't know that you can do that or if you don't have permission? What I'd really like to happen is for git to check the status of my repository remotes when I wake up my computer and notify me of any new commits that I need to take care of. Ideally it would look at which files had changed on each machine and do an automatic merge if I wasn't working on the same file in both places. If there were changes that needed to be taken care of, I would get notified and then I would have options as to what I wanted to do with the repositories.
You can extend git and when you type
git someCommandNameHere git will search your path for a program called git-[someCommandNameHere] and then run it. I assume that it can be anything from a shell script to another executable compiled program.
Basically, I want everything to work like magic. Is the magic possible or is it just better to do it all the old-fashioned manual way?
Well I said that this blog was going to be partially about my adventures as a software developer so here it goes.
This is my first real project. Thus far my development background has been projects for my classes, and the were pretty small. Now I'm going to try to make the leap to a real project while attempting to teach myself along the way. Sounds scary right?
As a college student, it's hard sometimes to follow your classes and know where you stand in all of them. Sure there are ways to do it, there are spreadsheets that you can set up or a few applications that you can download to your computer or iPhone or iPad, but I'm not exactly satisfied with them. I want one place where I can go to get all the information about my grades, but more importantly where I can go for anything that the course involves. That's what Curricula is. It's a course manager for the college or high school student. This week I got a few books in the mail from Amazon, both from Big Nerd Ranch (yes it's a real place). I'll be starting off by working through the Mac OS X Programming book and then move on to iOS after that. Hopefully I'll be able to finish at least the Mac side of the project by the end of the summer. I'll be posting more updates about the project here on the blog. If you as a student have any suggestions for what you would want in a product like this (or even if you just want to tell me that you think it's a good idea, you can leave a comment here or you can hit the Contact form above. I'm really looking forward to my first real development project and I really appreciate your support.
Thanks for reading.
Welcome to my blog. Let me tell you a little about myself. My name is Brad Ringel, I'm 21 years old and I'm from the suburbs of Cleveland Ohio. I currently attend Indiana University in Bloomington where I'm studying Computer Science. I used to be a Biology major and before that I was a Chemistry major, but that's a different story. Now I get to concern myself with what's going on in the technology world which is great for me. I like to program in Java, I know a little bit of Scheme and I'm teaching myself Objective-C and a little C on the side. I also love pretty much everything a self-respecting nerd should love which includes but is not limited to: Star Wars, Star Trek (gasp, I like both it's okay), new tech products, old tech products, dragging people along to see nerdy movies with me, etc. This blog is going to be about what's happening in the tech world but also in my life as a developer/student/person. Hope you enjoy, hit the subscribe link if you're really interested in what I have to say.
Thanks for Reading,