Quoi de neuf ?

Bienvenue sur Psychonaut.fr !

Le forum des amateurs de drogues et des explorateurs de l'esprit

any programmers/ hackers here??

  • Auteur de la discussion Auteur de la discussion spice
  • Date de début Date de début

spice

Holofractale de l'hypervérité
Inscrit
22/12/06
Messages
3 774
Hi all,
Lately I have developed an interest in certain things I haven't ever spent much time thinking about, namely, the usefulness of learning a programming language or three so that I can be prepared for the future. I would like to ask all of you who have knowledge to
speak to the subject in general. I have began dabbling in learning html, but this is a large area....what are, in your opinions, useful languages??? What will become useful languages? Why?

This is your chance to lecture......and mine to shut up and listen. :idea:
 
HTML isn't really a programming language, but a Markup Language, which browsers can decode so you see all the pretty colours.

In my opinion java is a good language to start with, because it is pretty easy to learn and can be used on almost all systems. But I'm not expert.
 
Well well Spice,


It just so happenes that I did software development and design for my higher school certificate, I was second in my class (a few years ago now) we learned "Visual basic"

Much easier than java or c++ id say that would be the best for beginners.

Once you know the general idea of how a program language works, if one has potential and is keen enough it should be very easy to learn the harder ones,

Im pretty sure html is just the coding behind a web page.
 
If you don't know any computer languages, I recommend starting with Python. It is cleanly designed, well documented, and relatively kind to beginners. Despite being a good first language, it is not just a toy; it is very powerful and flexible and well suited for large projects. I have written a more detailed evaluation of Python. Good tutorials are available at the Python web site.

I used to recommend Java as a good language to learn early, but this critique has changed my mind (search for “The Pitfalls of Java as a First Programming Language
 
I'd say java, but thats partly because i know it better than the others.

It's very usefull because of it's platform indepence (you just need a runtime environment to translate your code to a platform, but the input language remains te same).

It's also fairly easy and there are some handy tools to help you with getting started.. for instance an UML plug-in (unified modeling language), it helps to visualize what you are doing.

I wish i could lecture you on this but i'm still learning myself.

Good luck!

edit: there are some good programs available for java programming, i'd go for a free version of Eclipse.
 
When you decide what infrastructure to use for a project, you're not just making a technical decision. You're also making a social decision, and this may be the more important of the two. For example, if your company wants to write some software, it might seem a prudent choice to write it in Java.

But when you choose a language, you're also choosing a community.

The programmers you'll be able to hire to work on a Java project won't be as smart as the ones you could get to work on a project written in Python.

And the quality of your hackers probably matters more than the language you choose. Though, frankly, the fact that good hackers prefer Python to Java should tell you something about the relative merits of those languages.

Business types prefer the most popular languages because they view languages as standards. They don't want to bet the company on Betamax (Another rarer lanuage). The thing about languages, though, is that they're not just standards.

A programming language isn't just a format. A programming language is a medium of expression.

I've read that Java has just overtaken Cobol as the most popular language.

As a standard, you couldn't wish for more. But as a medium of expression, you could do a lot better. Of all the great programmers I can think of, I know of only one who would voluntarily program in Java.

And of all the great programmers I can think of who don't work for Sun, on Java, I know of zero.

http://www.paulgraham.com/gh.html
 
I am very happy to see that there is a lot of great advice already.

I agree with ItsNotShake that the community matters, but not at all that no good programmers would voluntarily use Java. I think that, especially when starting, using a language that encourages good habits and design is important.

I'd agree with suggesting Java and Python. Python might be good to try first since it may be easier to get something running. (I personally don't use python, but from what I've heard it is very neat.) Java is my bread and butter.

It might also be worth looking at Ruby. (Another one I've barely used, but would be easy to get started with.) It's object oriented, but kind of like a scripting language because of loose typing. There are some features that are very cool to seasoned programmers that could be confusing though, since other languages may not support similar constructs. There are definitely a lot of very smart people using Ruby.

Groovy might be a good one to try. It's a scripting language that compiles to Java byte code. There are definitely a lot of smart people looking closely at groovy to see how it develops.

I think the best thing about Java, Python, Ruby and similar languages is that there is tons of help and examples from excellent people. People tend to give away code and help with these languages instead of try to sell close sources libraries like other technology. Also, the code is often well thought out and designed. It's not a question of how can I do this, but how can I do this very well in an interesting and well designed way.

Not to be disagreeable, but I would stay as far away from VB as possible. I think it encourages poor design, bad habits, etc. The only reason it exists is because MS doesn't want to get a bunch of visual basic developer angry and want to hold onto that market. Some of these VB programmers are stuck because they don't understand fundamentals and can't use another language. If you must use a Microsoft product at least use C# as the language.

A little bit less dangerous, but something that can also be bad to learn first is PHP. Many might disagree with me on this, and I'm walking a fine line with it, but I think in general PHP encourages poor design also. There's a lot of great products (like this site) that run using PHP, but I think that the language design may not encourage good habits as well as some other languages. I think when someone learns PHP as their primary language, they may miss out on learning the fundamentals. But...there are a lot of great people who use PHP.

That's my 2 cents....
 
I only program for fun, and love Java. I think it's a pretty easy language to start off with, compared to the other ones I know about (except for VB, but I hate VB and don't think it's a good language to start off with).

A really good programming friend of mine has fallen in love with C, though. And he's a pretty smart guy when it comes to all that hacking stuff.
 
I know no other language than Java, and I'm not a real crack at it either but I can tell you there's lots of really extremely neat things to learn about programming. I'm having a really nice time with java, and after reading some C# code I'm quite convinced that if you pick one object-oriented language (such as Java/Python/C#/whatever) the others will be quite easy to learn.
 
spice a dit:
Hi all,
Lately I have developed an interest in certain things I haven't ever spent much time thinking about, namely, the usefulness of learning a programming language or three so that I can be prepared for the future. I would like to ask all of you who have knowledge to
speak to the subject in general. I have began dabbling in learning html, but this is a large area....what are, in your opinions, useful languages??? What will become useful languages? Why?

This is your chance to lecture......and mine to shut up and listen. :idea:
I'm a programmer. I program in php, Cold Fusion, java script, Flash Action Script, ASP, and a few other things, like database queries in Microsoft SQL Server and MySQL. For years I was a web programmer for a large corporation, with lots of servers under my supervision.

I gave it up for another occupation, but I still program for myself and others who are interested, as a hobby.

What do you think you want to do? Design web pages? Or make them do things?

If you learn a scripting language like PHP, it is almost identical to javascript and Flash ActionScript. So if you learn one, you have basically learned several. Try PHP. Why? Cheap hosting, free server-side language, and extremely well documented.
 
Cool, I had already began sniffing around Python and Java after doing a few online searches.....

ItsNotShake- Yeah, that's what I'm after, too....the philosophies behind the language choice, so I can understand it better.....however, I must admit, there is a huge, somewhat intimidating body of information out there.....but since you and I are interested in the others specialty, I have a feeling you'll be getting some pms from me soon with some questions.

Deep Turtle- You ask me; 'What do you want to do?

Well, first, I am wanting to work from my computer at home. I am pretty damn tired of going out into the blue-collar world.

Designing and building websites would surely be fun, though, as would making them do things.

I already have taken steps to begin investigating Python and C++, but in order to even GET started, I seem to remember that I would have to put Linux/Unix on my 'puter.

What I read said that you have to acquire Linux/Unix from someBODY
in the 'real' world.....where the hell do you get it?

Do I need to go to the giant university and hobnob with a bunch of tech-geeks to get it? I really don't have the time for that, though I suppose if I could get it no other way, I will.....

So, here's some questions;

1) why is linux/unix such a big deal? Because it's open source?
WTF is 'open source', EXACTLY....I have a general idea, but would like specifics.

2) what would be the best way to learn the basic terminologies and techniques? Most of these so-callled 'tutorials I have read are incomplete at best, and/or they assume you already know a lot of stuff.

3) I have a 'Sun Java Console' installed on my computer.
a) WTF is it?

b) wtf can I do with/ learn from it?


I have more questions, but this will get the ball rolling.

( BTW, thanks to all of you for your helpful responses. * respect* )
 
i think you can download linux for free in the net ... there are different distributions like ubuntu, suse or gnome. about the other stuff i have no idea :mrgreen:

peace


ps edit: open source means that the (source-) code of the program isn't held behind closed doors or somethin, it means that everybody can try to make it better.
 
Most software that you buy or download doesnt come with actual program code that the developer created, (source code).

It has been put through a 'compiler' which translates the code into a form that the computer can understand.

It is nearly impossible to modify/read it after it has been compiled.

Software manufacturers see this as an advantage that keeps other companies from copying their code and using it in a competing product. Thus forcing them to re-write entire programs just to make small improvements

Open source software is the opposite. The source code is included with the compiled version and modification or customization is actually encouraged.

The software developers who support the open source concept believe that by allowing anyone to modify the source code, the application will be more useful and error-free over the long term.

Programs like Linux, Mozilla, Apache, PERL (Web scripting language) and PNG (graphics file format) are all examples of popular software that is open source.
 
In order to teach you, we must first get an idea of where your at.

If you do not yet know the basics of reading and writing code, then it will be very difficult for you to even try to understand what is going on.

Once you know and understand the very basic way it is written, and you can write a little bit of your own, you should have enough momentum to get you going on your own.

The most important thing in learning software design is being CREATIVELY DRIVEN. (And having a can-do attitude) If your not that type of person then you will probably loose interest in SD pretty fast.

If you do fit the bill (which ive got a hunch that you do) and you manage to get up and running then you will soon realize that the possibilities are endless.

The Basics:

*Variables - Types, Naming, referencing, Declaring

*Arrays of variables 1 dimensional (2d and 3d later)

*Loops and if statements

*The way these can be used to perform simple calculations and commands.

Are you familiar with any of these?

If not then I can teach you how they work. That should make things alot easier for you to get started.
 
spice a dit:
Deep Turtle- You ask me; 'What do you want to do?

Well, first, I am wanting to work from my computer at home. I am pretty damn tired of going out into the blue-collar world.

Designing and building websites would surely be fun, though, as would making them do things.
Yeah, I thought that might be it. That's why I suggest PHP and MySQL.

Look at most websites, even this one, psychonaut.com, and you'll see they use php. It's so omnipresent and popular, I can't see what the point is of ASP or Cold Fusion.

As for open source, that means freely available, which Linux, PHP and MySQL are, for the most part.

Companies pay thousands of dollars to buy Cold Fusion (another server side language option), and poor people simply cannot afford to host a web site on a Cold Fusion server. But you can get a GoDaddy web site for like $60 a year, if it runs on php and Linux.

As for C++, I don't see what the point is, if what you want to do is program interactive web sites.

The Java suggestions are a good one, though, and I was always told I should learn Java. But, I learned how to program Flash ActionScript, and Flash programs and Java programs do similar kinds of things.

Flash is definitely not open source, you have to pay several hundred dollars to Adobe to buy the studio, where you can program it. But, as you can see, Flash is everywhere on the web, and it does amazing things (but, so does Java).

ASP runs on Windows, so it costs more because your web site has to be hosted on a Windows server.

Web programming? PHP. Learn some javascript while you're at it. They are very similar, if you learn one, you have already pretty much learned the other. Dirt cheap, works great, and its used all over the place. Your customers will love it. You don't need any kind of studio, you can write PHP using word pad or any text editor.
 
Thanks for the great answers.....Deep Turtle and shake.....


Turtle- So, php and javascript would be, in your opinion, a good starting point? ( How difficult? As in to learn, time-wise?)

Shake- Yes, someone told me ( no longer around ) a while back that I might see the light and realize I was probably the 'right type' to get into this area......I recognize the terms you use. variables, loops, statements...etc, but I don't really KNOW what they mean as in;
'what they do, exactly'.....It would be safe to assume that I don't have a lot of practical knowledge. I have read some, but generally I get the feeling someone would get when reading a ollege chem text the first time...' Jee-zus how is this comprehensible'?

So, if it was chemistry, I would say the usual.....learn to speak the language....for chemistry, the answer would be in the lab, ONCE YOU KNEW what you were mixing together, and had an idea of what they were supposed to do....

Well, I have a computer ( = my 'lab')

So I need to know wtf I am doing, so, Shake, I'd be more than willing to listen if you want to teach me some terminology, and what it is and does....also....what do I need to do to set up my computer to work with these ideas?
 
The three main programming languages discussed.

PHP - Obviously another very popular program, with its core built around web design.

Python - Good for progression into learning C, and not too complex. Perhaps good for hackers, and more experienced programmers.

Java - Very beginner friendly, Although the progression into learning c will be harder. This language is extremely popular with beginners and there are heaps of good tutorials available for it.


When you do decide to enter the open source world and get linux, (download it free) you can run it on your pc WITH windows simultaneously and if you dont like it get rid of it. OR Linux can be run direct from your CD drive, Although slow it can still give you an idea of what it is.

Im gonna push you into it and say java is the way to go for the basics.

So click this link below and down load it to your pc. It is a windows program so you can get linux out of your mind for the time being.

"link missing"
 
Sorry to fuck you around but i actually reckon this one is better to download,
so you can get rid of that last one.

Its called eclipse. Click on the bottom one called "Eclipse Classic 3.3.2"

http://www.eclipse.org/downloads/
 
spice a dit:
Thanks for the great answers.....Deep Turtle and shake.....


Turtle- So, php and javascript would be, in your opinion, a good starting point? ( How difficult? As in to learn, time-wise?)
It's very easy and very quick and progressive, because all you need to do is find examples of javascript and copy them, and tweak them for different effects.

Web programming? Then PHP and javascript.

The company I worked for sent me to a javascript class, and a Flash ActionScript class. From those I learned PHP on my own.

For the longest time I didn't get it, but one day it all sunk in, and now I can solve most problems with those languages.

A good javascript book I use, because it's simple and has good examples, is
The Book of Javascript by Thau! He covers basic stuff like opening popup windows, and writing text into web pages, and alert boxes.

A good book for learning PHP is "PHP4 A Beginner's Guide" by Bill McCarty.

Those books might be old, but guess what? Everything in there still works today. That means the languages haven't changed much. They've just added on new functions.

Speaking of functions, once I learned about functions and function calls, it was like Eureka, or seeing God. It all opened up for me.
 
Retour
Haut