Page 2 of 4 FirstFirst 1234 LastLast
Results 16 to 30 of 51

Thread: Ima gonna give programming a go...

  1. #16
    Join Date
    3rd July 2003 - 12:00
    Bike
    Scorpio, XL1200N
    Location
    forests of azure
    Posts
    9,398
    Quote Originally Posted by TwoSeven
    Actually I'm basing that information on a shit load of experience.
    The fact that you may have been working as a programmer with whatever language for however long doesn't really have much to do with the best way to learn about it. And I'm not dissing you.

    It's just... bugger worrying about what will get you a job. You have to grok the machine.

    I really don't have much time for people who are just doing it because they heard there was a 'good living in IT' or some nonsense like that, went and 'learned Java', or whatever, and now they're writing code behind buttons on web pages or database entry forms... most of the BSc comp sci graduates these days fit into that category. It's sad. They don't *get* it.

    There's real joy and satisfaction to be had in designing and writing software. Some people spend their lives getting paid to do it, but never really experience it.

    Just be glad I'm not ranting here about how Ching shouldn't be allowed near a code editor until he's learned to design logic circuits
    kiwibiker is full of love, an disrespect.
    - mikey

  2. #17
    Join Date
    3rd July 2003 - 12:00
    Bike
    Scorpio, XL1200N
    Location
    forests of azure
    Posts
    9,398
    Quote Originally Posted by NordieBoy
    Scripting language (TCL) + gui stuff (TK)... Perl would probably be the one to learn though...
    All very worthy and irreplaceable technologies.

    But let me make one last plea to ching_ching before I sink into silence and despair...

    FEEL the machine! Feel it tick! Feel the opcodes flowing through the pipeline. Feel the busy, intricate web of interactions in a vastly complicated system. Visualise the delicate dance of data on a bus. It's real, it's physics, it's not black magic.

    But if all you ever play with is Perl, or Python, or C#... you'll always end up with a little mental map of what's going on that has a blank spot in the middle marked "Here Be Dragons".
    kiwibiker is full of love, an disrespect.
    - mikey

  3. #18
    Join Date
    25th January 2004 - 06:14
    Bike
    07 R1
    Location
    Turangi
    Posts
    384
    Quote Originally Posted by jrandom
    All very worthy and irreplaceable technologies.

    But let me make one last plea to ching_ching before I sink into silence and despair...

    FEEL the machine! Feel it tick! Feel the opcodes flowing through the pipeline. Feel the busy, intricate web of interactions in a vastly complicated system. Visualise the delicate dance of data on a bus. It's real, it's physics, it's not black magic.

    But if all you ever play with is Perl, or Python, or C#... you'll always end up with a little mental map of what's going on that has a blank spot in the middle marked "Here Be Dragons".
    Hmmm... I think I'm feelin ya JRandom.

    I can learn the basics of programming in the generic sense with whatever language I think I can handle but to really get into the groove and experience the somewhat "euphoria"... (another programming language I believe) of being able to accomplish things by way of issuing instructions, looking at things at the ground level where all the orks roam would be a good idea. Yes??

  4. #19
    Join Date
    17th September 2004 - 21:20
    Bike
    Upgrading ^_^
    Location
    Boganville
    Posts
    335
    Quote Originally Posted by jrandom
    The fact that you may have been working as a programmer with whatever language for however long doesn't really have much to do with the best way to learn about it. And I'm not dissing you.

    It's just... bugger worrying about what will get you a job. You have to grok the machine.

    I really don't have much time for people who are just doing it because they heard there was a 'good living in IT' or some nonsense like that, went and 'learned Java', or whatever, and now they're writing code behind buttons on web pages or database entry forms... most of the BSc comp sci graduates these days fit into that category. It's sad. They don't *get* it.

    There's real joy and satisfaction to be had in designing and writing software. Some people spend their lives getting paid to do it, but never really experience it.

    Just be glad I'm not ranting here about how Ching shouldn't be allowed near a code editor until he's learned to design logic circuits
    you make me feel like a programming lamer, all I know is VB6, and a very thorough grounding in BASIC (which I feel is very helpful to learn first if you are going to progress to a visual environment)

    I had no idea people still wrote anything significant in assembly languages, can you tell me about what kind of stuff you've done with it?
    Eat the riches! Eat your money! The revolution will be DELICIOUS!!!

  5. #20
    Join Date
    3rd July 2003 - 12:00
    Bike
    Scorpio, XL1200N
    Location
    forests of azure
    Posts
    9,398
    Quote Originally Posted by Jamezo
    you make me feel like a programming lamer, all I know is VB6, and a very thorough grounding in BASIC...
    Learn C.

    Quote Originally Posted by Jamezo
    I had no idea people still wrote anything significant in assembly languages, can you tell me about what kind of stuff you've done with it?
    Not an awful lot. On almost any platform, anything you can do in assembler, you can do in C. When we (Navman) released our first in-car GPS product a few years ago (it runs on an Intel XScale ARM processor) I used some assembler in the bootloader and filesystem implementation, but that was only because it was actually tider to do it that way.

    In previous jobs, I've used it in code for EFTPOS terminals and PABX systems.

    The point of learning assembler, and playing around with it, is that it gives you a vivid picture of how the processor actually works, what instructions a function call or loop translate to, etc. That's why the Holy Bible of Software (Knuth's The Art of Computer Programming) introduces a hypothetical simplified computer design in the first chapter, and then illustrates all of its algorithms in that machine's assembly language in the rest of the volumes. The code is just as relevant and 'modern' looking now as it was 30 years ago.

    Quote Originally Posted by Tha Chingsta
    ... to really get into the groove and experience the somewhat "euphoria"... (another programming language I believe) of being able to accomplish things by way of issuing instructions, looking at things at the ground level where all the orks roam would be a good idea. Yes??
    Got it in one.
    kiwibiker is full of love, an disrespect.
    - mikey

  6. #21
    Join Date
    2nd February 2004 - 12:12
    Bike
    '07 GSX750F
    Location
    Auckland
    Posts
    373
    First try to figure out why you are learning programming. Are you doing it to make Business software, server side, portable devices, web interfaces etc. As said before there are many tools that can do all the jobs, but most are good at doing one type of task. Perfect example is what JR is saying about learning assembler. Great for handheld's, PABX's etc, single task machines. Even though you can build a fully fleaged accounting and stock control system in assembler, I wouldn't because of the maintenance factor involved in the program. I do agree that you should know how/what your computer is doing, how information flows around the machine, how a screen is painted in layer's, etc

    My two cent's worth is learn any of the .NET framework. VB.NET would be my pick, but I'm baised. Easy to learn, quick for GUI's, drawback that it protect's you from most of the underlying OS properties but they can be gotten around(also a plus as it's harder to f*** the system by accident). Can also tap into C code if needed.
    Speed limits are just a suggestion, like pants.

  7. #22
    Join Date
    25th May 2003 - 12:00
    Bike
    Motor Cycle
    Location
    Not here
    Posts
    1,180
    JR's got it about right, and it's true for other aspects of computing as well. Learning a bit of assembler will help you understand what you're trying to get a computer to do, regardless of what language you end up using. For sure if you're going to be a 'heads-down-bums-up' code monkey type anyway. Probably more important to have a financial background if you want to do something like reporting (which most programmers will tell you isn't real programming anyway).
    I've found it no different when finding network normans to do things for me as well. People that had a good understanding of old skool visually clumsy type operating systems like unix or ms-dos have a better understanding of how file systems work and what the operating system is trying to do. Thirdly, although these days one doesn't need to know much more than how to load a driver for a NIC, knowing how to set one up from scratch, layer by layer, on an old OS, always produces an engineer who can resolve network problems much faster.
    Probably good advice for anyone looking to change fields - a bit of knowledge on the underlying mechanics of a computer should give you an edge. They haven't really changed in 20 years. I have done a bit of both, although very little programming at a professional level.

  8. #23
    Join Date
    7th September 2004 - 10:00
    Bike
    A Krappisaki Tractor
    Location
    South
    Posts
    941
    As I say, assembler wont really teach you anything as such - it doesnt do anything that an ordenary language does except require a heck of a lot more typing and obtuse complexity for the same result - and the assembler people should know this.

    The reason I proposed java and C# is because they are very very good teaching languages as well as commercial ones - which means there is a lot of support for them including up to date online resources and books. They also allow you to access hardware at low level in the same way that assembler would, with the exception that you must have grasped the basics before you attempt 'the hard stuff'.

    Learning the hardware is not required if you intend to write application level software, since these days the functionality of most hardware is hidden by the operating system you are using. For this reason python is probably ok, but a rather odd one to choose - although if you've already started with it - carry on exploring what it does.
    The contents of this post are my opinion and may not be subjected to any form of reality
    It means I'm not an authority or a teacher, and may not have any experience so take things with a pinch of salt (a.k.a bullshit) rather than fact

  9. #24
    Join Date
    20th September 2004 - 12:00
    Bike
    1996 Yamaha SRV250
    Location
    Auckland
    Posts
    365

    Coding for Quality

    1) What JR says is true - you need to grok processor / memory / application layer interfacing to write good code.

    2) Whatever anyone says about elegance being easy to read is wrong. If you have an elegant solution, explain it in commentary. Someone who doesn't get the whole picture will at some point have to read your code.

    3) sometimes a naive solution IS the best solution.

    4) I'm still waiting for Amazon to deliver Knuth, Goddammit!

    5) Once you've done the groundwork, get some good introduction to Object Oriented Design. Most of what is being written is Object Oriented now - and you need to understand polymorphism, inheritance etc. Even if you aren't going to use it now, learn it. It helps in all sorts of programming problems - even when dealing with basic structures....

    6) If you get to be a programmer before me, I'm gonna come over there and jump on you... Someone get me out of QA... I'm trying!
    Yokai - bendamindaday

  10. #25
    Join Date
    16th May 2004 - 12:00
    Bike
    02 Piaggio X9 250
    Location
    Christchurch
    Posts
    222
    Quote Originally Posted by Wonko
    First try to figure out why you are learning programming. Are you doing it to make Business software, server side, portable devices, web interfaces etc. As said before there are many tools that can do all the jobs, but most are good at doing one type of task. Perfect example is what JR is saying about learning assembler. Great for handheld's, PABX's etc, single task machines. Even though you can build a fully fleaged accounting and stock control system in assembler, I wouldn't because of the maintenance factor involved in the program. I do agree that you should know how/what your computer is doing, how information flows around the machine, how a screen is painted in layer's, etc

    My two cent's worth is learn any of the .NET framework. VB.NET would be my pick, but I'm baised. Easy to learn, quick for GUI's, drawback that it protect's you from most of the underlying OS properties but they can be gotten around(also a plus as it's harder to f*** the system by accident). Can also tap into C code if needed.
    Learning C or Assembly is harder but It will teach you better coding practices and show you how the CPU and memory works. I thnk it is better to start with a easier language and than by learning C and assembly first.

    PHP is very easy to learn and in a short time you can be making programs that do something useful. PHP is the most common server side programming language (for web sites) and is used in many applications including this forum.

  11. #26
    Join Date
    3rd December 2002 - 13:00
    Bike
    1991 Kawasaki ZXR400L1
    Location
    West Auckland
    Posts
    841
    The thing about programming is once you master one language, its pretty easy to carry those skills over to any other language you need to pick up - mostly its just a matter of syntax.

    Personally I can't think of a better way to put someone OFF programming than telling them to learn assembly first. Sure it teaches you more about the lower level stuff but I would class this as intermediate/advanced material and not really suitable for a beginner.

    Basic and Pascal are good first time learning languages but aren't really that common anymore. VB (VisualBasic) is probably your next best bet but it is object orientated and this can be a hard concept to grasp as a beginner (esp on your own!).

    PHP is simple but is more web based and also setting up this environment to learn in is probably beyond the average beginner.

    I would say try VBscript/ASP first (cut down version of VB) as all Windows PCs have it built in so you don't need any software to get going. Ample samples/tutorials on the web too so you could be up and running in < 5 mins.

    Otherwise if you are serious I would take up some night classes in programming.....or get some "Learn to Program" books out from a library. Its very important to learn to program right as you can pick up some nasty habits if you're not kept in check.

  12. #27
    Join Date
    20th November 2002 - 11:00
    Bike
    SW-125R(F4-TF125), ZXRD400, RD250LC
    Location
    Wellington, New Zealand,
    Posts
    5,963
    Blog Entries
    36
    I've been reading Folklore.org which is about the team that did the first Mac. Tells the story in their own words about Xerox, LISA, Apple II, and the first Mac. Trying to fit everything into the memory space and addressing the ram etc. Much of it over my head.

    Good read about some strange and talented guys. Whether you're a Mac fan or not.

  13. #28
    Join Date
    25th January 2004 - 06:14
    Bike
    07 R1
    Location
    Turangi
    Posts
    384
    Hi there gang,

    Thanks again for your replies so far. Yeh it seems that one can be easily inundated with the opinions of what languages are best for just 'learning' how to 'string' some instructions together just to see what it can get your computer to do in which case pretty much any language will suffice. But like Hoon said, learning the basics by way of any language then transporting to any other is a matter of syntax (among other things). All I want to do at the mo is just learn the basic structures / constructs (loops, lists and other data structures, etc) without any purpose in mind of a final project. After I do that (and I will) then definitely look at the barebones stuff of assembler and co. (First time I had a look at assembler and all the machine code and about binary / hex I went "WTF??") Haha. Anyways, I seem to be slowly getting into it and believe me I ain't no geek (no offence fellas / fellases) or so I thought. (Man, can't wait till I get my pocket pen protector).

    Once again gang, thanks for your feedback.

    ching

  14. #29
    Join Date
    17th September 2004 - 21:20
    Bike
    Upgrading ^_^
    Location
    Boganville
    Posts
    335
    Quote Originally Posted by ching_ching
    Hi there gang,

    Thanks again for your replies so far. Yeh it seems that one can be easily inundated with the opinions of what languages are best for just 'learning' how to 'string' some instructions together just to see what it can get your computer to do in which case pretty much any language will suffice. But like Hoon said, learning the basics by way of any language then transporting to any other is a matter of syntax (among other things). All I want to do at the mo is just learn the basic structures / constructs (loops, lists and other data structures, etc) without any purpose in mind of a final project. After I do that (and I will) then definitely look at the barebones stuff of assembler and co. (First time I had a look at assembler and all the machine code and about binary / hex I went "WTF??") Haha. Anyways, I seem to be slowly getting into it and believe me I ain't no geek (no offence fellas / fellases) or so I thought. (Man, can't wait till I get my pocket pen protector).

    Once again gang, thanks for your feedback.

    ching
    how about starting off with BASIC, with a focus on loops and arrays. it's amazing what you can do with loops and arrays, especially as you go on to visual environments, they are frequently undervalued. writing efficient and eloquent code is a fine art as far as I am concerned, and modern languages make it too easy to write bad code.
    Eat the riches! Eat your money! The revolution will be DELICIOUS!!!

  15. #30
    Join Date
    3rd July 2003 - 12:00
    Bike
    Scorpio, XL1200N
    Location
    forests of azure
    Posts
    9,398
    Yeah, true, very good point Hoon. Start learning with a fun language and programming environment that can make the computer's bells and whistles go off with without too much hassle or pain, and it'll whet the appetite.

    No rush. You can learn assembler or whatever else you want if and when you feel the need.

    Y'all will have to excuse my hardcore geekism, I haven't taken my medication this week...
    kiwibiker is full of love, an disrespect.
    - mikey

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •