Showing posts with label apple. Show all posts
Showing posts with label apple. Show all posts

Monday, June 16, 2014

Objective C and Other Distractions



So I've been working with Objective C since last week...and this is starting to get a little bit frustrating. Python was supposed to be my thing on the side and now I've picked up something else...and loving it.  I have found, and still find, Objective C to be a little cumbersome, but I'm also starting to like it. I  also feel like it's helping my overall growth as a programmer, but it's making me question learning languages like python and ruby, because you don't want to deal with languages like Objective C, afterwards.

I'm also being tempted by other things...like Java and JavaScript...and getting better with HTML and CSS.
Going to all of these hackathons and talking to other coders is  piquing  my interest in other things and just really getting me excited about coding. Coming in, I didn't really know about the limitations of languages as far as what they could be used for. My biggest surprises/challenges were:






      • not being able to use any language to make mobile apps
      • having to have an MAC to make apps for iPhone and iPad
      • having to learn Objective C to make apps for iPhone and iPad
      • having to learn Java to make apps for Android
      • not being able to compile ruby and python into executable files


To be fair, I read/was told/heard that the best way to go about programming is to decide what you want to make, and then learn the things that allow you to do that. However, no one tells you the above. I think that a major problem with learning to program is that the people who really know how to code don't really think or rememeber what it was like in the beginning. When I started learning, I was fascinated by programming, in general, and I wanted to make things...all kinds of things. For me, it would have been much better if I could have just used python or ruby to do whatever. Something that I also heard, in the beginning that maybe threw me off a little was that you can use any language to approach a problem, which is true, but misleading [see above]. 

But to get back to my original point, I have being hearing a lot of great stuff about JavaScript, like Angular.js and Node.js, and I'm really interested in learning more about it. At the same time, I want to learn about Java to make Android apps, and C/C++ so that I can make executable programs and because I also heard that execution was much faster than programs written in Ruby and Python...and this is just the beginning. My world is just opening up to this stuff. 

The frustrating part is that there is still so much that I still want/need to do and learn in Ruby, and like I said, I've just kind of been treating Python like a side project. I keep catching my self contemplating trying other languages [like the other day when I almost started that Angular.js tutorial]. 

I want to make an app or two using Ruby, and at the same time, I want to do some engineering things using Raspberry Pi. Oh well, I guess I need to just get back to it...

Sunday, June 8, 2014

Having to type "NS" and "@" is Front of Everything is Not Ok.


This weekend I attended a hackathon at the AT&T Foundry in Atlanta. As always, I learned some new things, got different perspectives on coding, and met some cool people. That was the good stuff, the not-so-good stuff was the way that the event was structured. This was only my third hackathon, but I have gotten used to all of the ideas being pitched and then being able to join that team and work on the idea that I liked the most. This was not that. When we got there, it was basically: find a team and make something, which meant finding someone to work with, agreeing on a problem to be solved, and then agreeing on the solution. I think that putting so much of the burden on the participants made for a much less productive event than it could've been.  Most of the people at the event spent the entire first night trying to find a team and come up with an idea. Personally, my team didn't even have a viable idea until 4 hours before the judging and we ended up not even presenting. 

One of the things that really struck me about this event, was people coming to the event in teams and being really secretive about what they were working on. This wasn't a widespread issue or anytihng, just something that stuck out. In an environment where everything is going to be open-sourced in the end, I think that this attitude in non-productive. I think that people do this for two reasons: a.) they want to split the prize "money" with as few people as possible, and b.) they overestimate their idea and underestimate what new perspectives and talents bring to the project. When people come to hackathons with this mentality, their time is wasted if they don't win a prize, and if they do win a prize they exposed their idea to others on the cheap. They don't learn anything new that they couldn't have gotten form just going to a coffee shop or other work-space and building the project, they open their ideas up to appropriation, and most importantly, they don't meet new people. Sucks to be them.

Anyway, I think that my most positive take away from this weekend was my need to either learn Java or Objective-C so that I can work on mobile apps. While I love Ruby and Python, I also think that being able to convert my applications to mobile apps is going to be important in the future. To that end, I have started learning Objective-C and I'm completely missing the point. I haven't gotten too far into it, yet, but from what I've seen, I can't understand Apple's decision to devote resources to build their own languages for their applications. Ruby and Python seem like way better solutions at this point and I just really don't see the appeal of Objective-C.

 Although, I am enjoying taking some time to look at a new language. I can't really see myself spending a whole lot of time on it, right now, but I'll be really ready to get something out of my study when I decide to. I'm going to start building stuff in Ruby and Python in the immediate future, but soon..

Also, I did manage to get some cool T-shirts from Crittercism this weekend, though. 


Wednesday, May 28, 2014

Advanced Ruby Features



I have decided that buying a mac is going to be unavoidable. I never thought that I would own a mac, but Windows 8, their lack of interest in what's best for the user, and the inability to create apps for iPhones and iPads make owning one a necessity as a developer. Windows 8 even blocks you from running Ubuntu side by side with it and I'm still trying to decided whether or not I want to add this third party software to my system that will allow me to to this. [it's been 2 days] I'm seriously disappointed in Microsoft...shopping for macs online today was so depressing.


Two weeks ago I went to Octane and there was this chick there with a mac 
who sat on facebook for two hours...all of my nope, every bit.


I've been taking it kind of easy on myself this week, I think. That last chapter was a little bit taxing, interesting, but taxing. I had to take my time and take it in pieces so that I could retain as much as possible. The chapter that I just finished in my book was about advanced Ruby topics [whew!].  It took me a few days to get through it, just because I was trying extra hard to take everything in [probably not the best idea ever]. This is probably one of those chapters that I'm going to have to go back and read again...and again.  My favorite topics were probably the ones about Win32API and win32ole. I'm definitely going to have to learn more about that stuff.

Topics that I remain weak on are threads, fibers, and RubyInline, although RubyInline is awesome and I need to learn a lot more about that...and new languages. Being able to use C in ruby for hyperspace in your programs is sweet and I am also very interested in using any and all other languages with RubyInline. I'm extra excited about learning other languages now, even though I probably won't start anything new until 2015. It will probably be my New Year's Resolution. This year's resolution was learning to code[killing it, btw].

In the next chapter, that I've already started ;), I'm going to be making a bot, like Eliza. It's supposed to bring most of the stuff that I've learned in the book, so far, together, and it should be pretty interesting. I'm looking forward to working on it more tonight... after I do a little bit more Hindi. Hopefully, this will be great review for the things that I have already learned and clear up some of the topics that I was fuzzy on going through the book.