Author - Web Developer - Educator
Found 2 results for tag "coursera"
RSS Feed

Java Progress

XKCD
Lost on the concept? This may help explain it

As per the request of many a-people, I have started studying Java.

Personally, it's because I started an Android application course that apparently was a lot harder than I anticipated. I expected the course to be "Here's what you need to know in order to develop an Android program." Instead, it was "We're expecting you to know Java. Knowing that, create this program with these Android specifics."

Let's just say that I easily zoomed through the video lectures (it was via Coursera) and the quizzes, but the first assignment really handed me my rear end. I thought I was alone in the fact that I had absolutely no idea what to do.

The Assignment

	// Create counter variables for onCreate(), onRestart(), onStart() and
 
	// onResume(), called mCreate, etc.
 
	// You will need to increment these variables' values when their
 
	// corresponding lifecycle methods get called
Okay, no biggie. I just need to create incremental variables in Java. How do I do that? In PHP, it's just $counter = 0. How does Java do it?
	// TODO: Create variables for each of the TextViews, called
 
        // mTvCreate, etc. 
Okay, creating variables. In PHP, it's $variable = 'string';. So, is there any difference than the above step?
		// TODO: Assign the appropriate TextViews to the TextView variables
 
		// Hint: Access the TextView by calling Activity's findViewById()
 
		// textView1 = (TextView) findViewById(R.id.textView1);
Wait, what? So do I write textView1 = (TextView) findViewById(R.id.textView1);?

And that's about as far as I got before I spent hours on Google searching on how to do these specific things (yes, they are extremely specific), and combed through the Course's forums.

Apparently, I was not alone. A lot of people were complaining about "I'm a Java beginner. I don't understand any of this stuff!" Even some people were saying "I've been studying Java for about 2 years, and even the first assignment took me about 7 hours to complete." WHAT? The first assignment of courses is supposed to be progressive. "Here's how you output 'Hello World'." and "Here's how you add color." and "Here's how you add a button." - you know, progressive

At this point, I said "I need to study Java more." So much for trying to "dive" into Android. I need to backtrack a bit.

Kilobolt to the Rescue!


So I followed some links in the forum and found many, many Java tutorials and found one that I really liked: Kilobolt, a student at Duke, has a lot of tutorials of basic Java (like understanding public vs. private methods, classes, and variables, actually declaring variable types like string, int, long, boolean, and even ArrayTypes, referencing outside classes, expanding classes, inheriting classes, and more. Overall, all of these items helps you develop a 2-D game to put all of these items to use: as in "Application Learning," which is what my Python course did last year.

Kilobolt has really saved me and helped me understand Java better. I don't think I'll be an expert by the end of the week, but I'll know more than I did a few days ago. And hopefully, by knowing this, I should be able to give Android a crack again.

Fruit of my Labor


Also, in the 8 (or so) hours that I have been going through Kilobolt's tutorials, I completed 2 out of the 4 Units for Java, and completed this nice little number:

It's not much to look at, but given the fact that as of 12PM on Wednesday, I had absolutely no idea how to do that, and, as of 3AM this morning, I created that, I think it's pretty awesome. I can't wait until the full project is done!

Wait a sec - you're studying Java, NOW? Why not in College?


I'm sure some of my programmer friends are asking "Why did you wait so long to study Java? Why didn't you go into Computer Science when you were in colleg?" Personally, I never really saw the appeal of "Desktop Software" (Software that only operated on your computer and nowhere else). I always saw potential in languages like HTML, PHP, MySQL, etc, because you could post it to the web and let the whole world see, without having to do any major marketing ("Here, try my software!"). Visual Basic and C++ gave me a taste of desktop programming back in high school, and although those were building blocks for what I know today, I had more fun with PHP and the like. When I entered into college, I saw that the CS department was teaching Java, and I thought "Why study something that was current 20 years ago?" and never thought twice about it (and seeing all of these "Applet Rich" programs on the web that took at least 10 minutes to download and run on a dial-up connection steered me away from learning a "pointless, single-purpose" language). However, now since Keat is going through a CIS 250 course and learning HTML 4.01 (ok, 13 years ago - yes, HTML 4.01 came out officially in 2000), I'm re-thinking my priorities. Entrepreneurship has its advantages, and it was fun while it lasted, but I love to code. I love to learn new languages. I love to push my potential. When I entered college, "Smart Phones" hadn't even been thought of. "Android" and "iPhone" programming was something completely foreign. I never thought "By learning Java, I can learn to program phones!" Never crossed my mind.

Looking back on it, I think I would have joined my friends in the CS department and been able to accelerate my programming knowledge further than today. Aside from 1 formal HTML course, a VB course, and a C++ course (and a Python course, if you count Coursera), I've always been self-tought in languages I learn. Maybe that's a problem with me - since I've never really had any advanced formal programming training, that's a flaw I have and didn't seek it out, thinking "I can learn all of this from the web." However, while trying to apply to jobs, I think a lot of people are saying "He has a degree in Entrepr-something. We want a Programmer!" and turning me down. Instead of saying "Ha! Their loss!", maybe I should look at myself and re-examine the priorities, emphasizing my experience in difference languages. Yes, I may have a degree in Entrepreneurship, but I studied and practiced web technologies, web strategies, web marketing tactics, PHP algorithims, code-based studies, SEO methods, and more while trying to build up my business.

Last Notes


I will say that I was against learning Java for the longest time. I always saw it as "slow, decrepit software". I always told people that it's like "learning Japanese when you know Spanish," which is technically true. However, the logic planning and orientation of the language is fairly similiar to PHP. The only main differences being that:
  1. Java (from what I've seen), like Python, is heavy on the "Object Oriented" portion of OOP.
  2. You must declare all of your variables at the top and specify their types, whereas PHP can just declare variables.
  3. You must have an IDE to complile Java, where as PHP you just need a text editor and a PHP-based web server.
  4. Changing variable types is not easy whereas in PHP, it doesn't really matter (example: integer to string to float and back).

I'm sure there are a few more, but that's the basics that I've seen so far. It's certainly more structured than PHP is, but I hope I can learn more about PHP through Java, just like I learned more about PHP Objects from Python.

Day 2


After completing Unit 3 and starting Unit 4, this is what I have so far:



Tags:#java #android #coursera #kilobolt

RSS Feed

Summer Review

This has certainly been a crazy summer. Since my last post in May, I'll sum up what has happened, but first, this:
Dilbert

Business:

  • We have decided to evolve the business: after 7 years of creating client websites, we are taking a different direction focus to the business. The plan is as follows: we will be offering "quick to create" CMS websites at a low-end price for the businesses and organizations that don't have $1000 to spend for a website, and require the ability to update their own website (although we have been pushing and emphasizing our "Website Management" service), and focusing more on developing "Software as a Service" (SaaS) applications. These applications include the following:

    • CityFix

    • OmniCard

    • WNC Local (which is actually coming along quite nicely since I am developing a primary framework for it to work off of, which I can use for other projects to help reduce the amount of coding required)

    • ScrumIt

    • ...and a few others


    Let's just say that based on what our developers want, they would like the ability to code, develop, design, test, and innovate in-house applications instead of having to conform to deadlines or produce less-than-quality websites.

  • Based on the next upcoming months, we should be moving out of our current office space. All details aside, things just aren't working in our favor to keep it. The move out should happen within the next 60 days.

  • We did receive 2 new clients during the away-time, but we also lost about 5 clients. One client we gained wanted a full-fledge basic website, while the other wanted some custom work done to their current site. Either way, it's good money. However, we did lose about 5 clients, and (to say what I've told others) I have no specific idea why. So there was some bad to go with the good, but I do believe that this was a sign telling us to get out of the "design client websites" business. Therefore, "message received."

  • (This can be classified as either business or personal, but either way) I signed up for CoFoundersLab.com, which is basically a Match.com for Entrepreneurs. Overall, I like the concept, and within the first few days of signing up, I already had a meeting with a potential business partner in Asheville. (I put on there that "[I am] looking for someone to join [me]" to help bring all of these SaaS services up to speed. We can produce the code if they can manage the business) After the meeting, things went well, but not as well as expected. I was later contacted by many people who were looking for me to join them. When I explained that I already had prototypes of my services and were looking for someone to join me, they backed off. However, I did receive one good contact from Atlanta who (after a lengthy phone conversation) will send me investor connections he has. So, things look good so far.



Personal:

  • I beat Tales of the Abyss (finally). When I last played it, it took me over 70 hours to play fully, and when I reached the final boss, I could never beat him. Using a walkthrough I found (supercheats.com/playstation/walkthroughs/talesoftheabyss-walkthrough01.txt), I was able to level up appropriately and beat the final boss on the first try. I got to see the end of the game, and I'm playing through again with 2x the experience, which should allow me to beat the stronger optional boss at a later time. Yay!

  • Keat and I have started (seriously) began planning for the wedding. I'm saying "seriously" because her parents are finally getting serious. We have pretty much everything planned out, including: the locations, the downpayment schedules, the overall budget, the payment logs, the tuxes, the reception menu, the program design, invitation design, Save the Date designs, groomsmen, bridesmaids, preacher plans, limo scheduled, flowers, etc, etc etc. The only things that we have left are to finalize everything, test/decide on the cake, and order the printing material. Just over a year to go.

  • I was interviewed for the Magnet Program for Wake County Public Schools. I wasn't quite sure what to expect (since I had been through the magnet program since 1st grade and didn't have anything to compare it to), but I went down last Tuesday, went through the interview on Wednesday, and got it over.

  • I finished my Python program through Coursera and received a 90.6% with distinction (I didn't do the first week's quizzes). Not bad for my first online course. I tried to enroll in a "Programming with Design" course, but that seemed to be more of a "how to emphasize design in programming" geared more towards designers with little to no coding, so not really my kind of course. I also tried enrolling in an Algorithm course from Stanford, but I did not have the time during my week to watch 20 hours of videos each week, so I had to unenroll myself out of that course.

  • I've tried to install Ubuntu on my home server and failed miserably. After multiple, multiple attempts at trying to install it, I believe the issue was that my hard drive had officially died. I don't mean "dead as a doornail" kind of dead, but it could not have anything else written to it, so I cannabilized the spare office computer and inserted the hard drive from it into my machine, and I'm using that version of Ubuntu on the old mainframe. Not pretty, but it works.

  • Keat and I have picked walking back up. Based on the past few weeks, we are doing an average of 2.5 miles a night, at a pace of 2.2 mph, which isn't bad. I'm sure I can go a lot faster, but I'm going Keat's speed, which is fine with me. I'll get up to running around the block again....one of these days.

  • I finally saw "Doctor Who: Planet of the Dead". This is the one Tennant movie that I could not get via Netflix or any other online streaming source (aside from BitTorrent), and while I was in Raleigh for my WCPSS interview, it was on BBC America! So I got to watch it! YAY!

  • One of my favorite animes, Sword Art Online, got an American adaptation with dubbing. Now, I know that I'm probably being prejudicial by saying "The American version won't be as good as the Japanese version", but in this case, I can freely admit that. Based on my previous blog posting, I said that I had a fan-crush on Asuna, and I meant that. However, when I heard that Toonami was picking up SAO when ThunderCats ended, I was excited....and scared. When I heard Episode 2 (that's the first one that we get to hear Asuna speak), I will admit that they didn't do anything to capture Asuna's spirit or personality. In addition, the same actress that played the daugter (Natsumi) in Sgt. Frog voices Asuna. I was semi-okay with the voice-over work, until the tail end of Episode 2 when Asuna said "I'm so stupid". At that point, I didn't see Asuna anymore, but the pink haired main female character from Sgt. Frog: Natsumi Hinata (don't get me wrong: Sgt Frog is a great, yet stupid, series). And...that ruined it for me. I still prefer the original Japanese version any day of the week.

  • I got a haircut. Yes, I know. "What a shocker!". I thought "It was time for me to get rid of the ponytail and get with a more realistic haircut....how about a 'David Tennant' inspired style?", and that's pretty much what I was aiming for. Not perfect, but I have a year to get it right before the wedding.
    My haircut

  • Wow, has it really been over 2 months since ConCarolinas? Keat and I attended Con during the first weekend in June and it was really fun. We saw the Team Tardis Cosplayers which did an amazing job cosplaying Doctors #9, #10, and #11, with an awesome real life Dalek, Keat entered into a Costume Contest as Katniss and she should have won (personal arguments against the actual winner aside, and the judges for making the contestants and audience wait 4 hours for a result), we met up with a lot of friends, attended a few parties, got a bunch of stuff, then drove back. I didn't have much of a costume, so I threw together some khaki's and a button up white shirt, trying to be Jamie Hyneman (I can't be Adam Savage), but it turned out more "Han Solo" than "Mythbuster" (see below image). Oh well, better luck next time.
    Wannabe Mythbuster turned Star Wars

That's it for now. I'll try to get back in to posting soon, as soon as I can get back into it.


Tags:#talesoftheabyss #saas #coursera #ps2 #wedding #ubuntu #debian #concarolinas #mythbuster