Author    Date May 24, 2010   Category   Trackback 
7

Objective C (the main.m file of an iPhone app)

I’ve been developing for a number of years now. My very first programming language I tried to learn was Visual Basic .NET. As like learning anything on your own, comes hard challenges. This was the very first programming language I tried to set my hands upon.

After learning the basics of Visual Basic .NET, I basically gave up. And at that point, I started learning (X)HTML. That was easily five years ago. I learned the basics of (X)HTML, but at that point, things like CSS weren’t ever so popular.

When I was working with some other friends, I was given the oppurtunity to basically to become the “web-master”. As of today, that term means something totally different. Back then, it simply meant updating the content. Today, it means doing database work, scripting work, and even (X)HTML/CSS/JavaScript.

So when I was working with my friends with managing their websites, which at the time I completely had no prior experience to developing in any language, I really opened my eyes to a new world.

Last year, I ended up taking a computer science course that taught Visual Basic. And you know what, I aced it with flying stars. Earlier this year I took the web design course (that really only discussed the basics of (X)HTML/CSS)), aced that one too. So I can tell you right now, I have lots of experience…

But what’s probably the most important thing when developing, is how you do it. If you’re starting off at the very beginning, I can honestly say don’t expect that much because learning how to develop in any language will be tough for the first time. Once you get past that first language, it’s all quite easy because you understand how it’s supposed to work.

When I develop, I take the matter in what font I use, what syntax colors are used, the background color, and even how large the font is.

  • Anytime you’re developing on a large project, it’s going to take a lot of time. Programming != writing a paper (and yes, I can throw in some programming terms to spice it up – for you new ones out there, the != is a global term that basically means “not equal to”). When you write a paper, it’s almost always on a white background with black text. But when coding, some people, like myself, prefer a black background with inverted syntax colors. When you’re looking at code for hours on end (which a typical programmer does quite often), it can just be stressful on the eyes. Many people think black is easier when coding than white. It’s a matter of preference, but just try it out.
  • As from what I’ve said before, font is a huge thing when programming. On the Mac side of things, Monaco is used a lot. On the Windows side, Courier New is used quite a bit. When it comes to fonts, it’s really a matter of preference. If you want to get some idea of what font is perfect for you, go to  the Top 10 Programming Fonts to find your favorite font. Personally, my favorite font is Inconsolata at 13pt. So what’s yours?
  • The last thing I really want to cover is the syntax colors. If you’re like me, you care about the colors of what’s being used for certain syntaxes. For example, when I’m coding in PHP, I like my variables to be in yellow and my <?php ?> text  to be in red. It’s a matter of preference and you can set these in almost every editor out there.

Hopefully that helps for anyone developing in any language. If you see in the image above all of this, that’s the way I personally like to develop, at least in Objective C that is.

If you have any more programming tips for us to write about, be sure to drop it in the comments below! We’ll be more than happy to hear on how you develop.

About the Author
Taylor Jasko
Author: Taylor Jasko
Throughout my whole life, I've always been so fascinated with technology. Quite some time ago, I started to pick up aspects on web development (HTML & CSS). After my intro to development with web-dev, I started to go into real programming. Right now, you can catch me working with Objective C for making apps for the iPhone! In other words, I'm a straight up hardcore developer and graphic designer (yup, all the graphics for the theme on Tech Cores are done by me).
Like it? Share it!
Share with Twitter Share with Facebook Share with Digg Share with StumbleUpon
Comments (7 Responses)
  1. 80h says:

    while it is true that much of the work can be done for you nowadays, i still assert that it is important to understand the underlying concepts of what you are doing. i come from a background of doing 386 assembly and C, so i am able to write super optimized code for what i do now in a higher level language.
     
    for example, in perl there are modules like DBIx::Class that abstract away the details of interfacing with database entirely. on small scale projects you can get away with writing little to no SQL at all for doing CRUD work. however, on large scale high traffic sites this can become  a huge bottleneck if you are relying on the system to do so much of the work. this is why i am stressing the point so much of knowing exactly how the computer does what it does, so when it comes time you can write code that runs fast and efficiently. you can only benefit from it.
     
    while vi, vim and emacs arent new by any standard, there is a reason they are still widely used today. for one, they are all free, and all use highly customizable key combinations to perform pretty much all the actions that youd ever wish to use. after using them for a short time they become second nature, and this allows for maximum efficiency with no time spent searching through a GUIs menus for a specific option. also, in emacs you can check your email, read news feeds like usenet, play games, etc.

    • Taylor Jasko says:

      Ohh wow, you come from a tough background. For sure writing optimized code helps a lot, I would think for the compiling time too.

      I haven’t done much with Perl, but I do get what you mean. If you write something that isn’t optimized, especially in Perl, things can slow down a lot.

      That’s true. And in fact, they’re open source, which all programmers love. I guess it depends on the programmer. More modern programs help a lot with searching through code too.

  2. Ryan says:

    Can someone teach me to develop I know many things about tech but developing is not one of them.

  3. 80h says:

    of course everyone is different, but things like customizations of a text editor as i said are trivial and  should come later once you get comfortable with whatever it is you are learning. i saw the title of the post was ‘learning how to develop’ so i thought id share a few tips.
    as far as soft tabs go (this means 4 spaces rather than an actual \t), if you are working on a collaborative project with professionals and use tabs in source files it will drive them nuts. proper spacing and indentation of blocks and statements is definitely a habit to get into, logicallly seperating them and making them easier to read (most higher level languages dont care too much about whitespace in the code unless its inside a string of course) like so:
    sub foo {
    my $bar = 1;
    return $bar;
    }
    ^ is easier to read than
    sub foo{my $bar=1;return $bar;}
    to reference “Structure and Interpretation of Computer Programs” – MIT Press, “..we want to establish the idea that a computer language is not just a way of getting a computer to perform operations but rather that it is a novel formal medium for expressing ideas about methodology. Thus, programs must be written for people to read, and only incidentally for machines to execute.”
    understanding how basic input and output works with a computer is the foundation of its entire functionality, thus it is arguably vital to understand it before you begin trying to write instructions for the computer to perform. the less superficial an understanding you have of the computer the better, the coding can come later. also just for example, something like planning out your applications functionality ahead of time and getting it down on paper can save you alot of guesswork in the long run.
    vi and vim are both text editors for the gnu/linux platform, with vim being the alleged ‘improved’ and newer  yet seperate version (or rather a derivative) of vi . i know people who use both.

    • Taylor Jasko says:

      Ohh yes, tabs can drive people nuts at some times.

      When it comes to poor spacing, I can completely agree. I come from, like I’ve said, a big web developer. And when developing for the web, you have many nested things. Spacing is crucial in any language!

      Typically, I try to get away from those one liners. It’s just messy and hard to edit if you need to.

      Computer programming is for sure like MIT Press has said. It’s like writing a book; it needs to make sense. If you throw all your variables in between code, that’s really bad to do, Instead, most devs (if not all) throw them at the very top or in the header file.

      Knowing I/O is pretty crucial, but most of the compilers (if the code needs to be compiled, unlike PHP) nowadays optimize for the best I/O performance. In the old days, it was really needed to learn basic I/O, but now, the compiler really takes care of it all for you. If some of your code isn’t optimized, the compiler will try its best to make it. But when it comes to used switch statements of if statements, the compiler won’t do that.

      Yeah, future planning is critical when programming. Expandability is so important, that companies pay so much money for that kind of stuff. Writing it down on paper helps, but simply just jot down a note using ShoveBox on my Mac.

      VI and VIM just seem like really old editors. Yeah, it’s for the Linux platform, but seriously, I love Notepad++ on Windows. VIM is okay, but it could be a lot better. I’m on a Mac, so of course I use some different programs.

  4. 80h says:

    ehhh, i wouldnt say really any of these things are important at all when learning to design applications. as far as a good text editor goes, one with soft tabs like emacs or vi is always good but this is really the last thing you should worry about. these are all very trivial, understanding things like the call stack and how basic i/o works on a low level will give you a good foundation to grow on. having someone think about the computer in an even more abstract way wont help.

    • Taylor Jasko says:

      Hmm, well, it’s everyone’s opinion. Every dev is different.

      I’m not so thrilled on tabs for developing apps. For web-dev, I think they’re great, but when designing an app, not too much.

      I believe you meant Vim than Vi.

      And just to inform you, it’s not learning how to develop, it’s tips to learning how to really work with those dev tools. Learning basic I/O is a great foundation to start on, but how you code is just as important…

      The best thing to start of with programming would probably simply be a “dummies” book. I wouldn’t even try to start off with learning a language. Probably just the programming theory first of all then start learning a language and applying the basics you’ve learned to a new language.

      Well obviously background color, fonts, and syntax colors are trivial. But the thing is, you don’t know how many beginning devs don’t know that you can change that. Like for example, I hate any orange syntax color. Every dev is different. :)

Leave a Reply