[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

So guys, I wanna learn programming. What language should I start

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 214
Thread images: 14

File: 1246523462346.jpg (6KB, 273x184px) Image search: [Google]
1246523462346.jpg
6KB, 273x184px
So guys, I wanna learn programming. What language should I start with? I was thinking Python because of the shit I researched. Can you recommend me some books that are actually good for learning it?
>>
>>8237803
bump
>>
>>8237803
why don't you try to make a calculator?
>>
>>8237803
Python is a good place to start. Most beginner books will be similar. The best way to get good at coding is to code everyday, think of a simple program that you would need and try to make it.
>>
>>8237803
Python and Javascript are probably the best programming language for beginners.

Just go trough codeacademy.com or Learn Python the Hard Way
>>
>>8237814
""Java""script isn't a good programming language for beginners, in fact it's not even a good language.
>>
>>8237813
What are some examples of simple programs that might be useful?
>>
>>8237821
see
>>8237811
>>
>>8237821
I made a income/tax calculator when i first stated coding, I had a casual job at the time and was quite useful.
>>
>>8237821
you could even make a simple game like hangman
>>
>>8237803
C++ would be a better language to learn for a beginner. It's more transparent of what's going on and close to being the lingua franca of programming.
>>
File: python.png (140KB, 844x408px) Image search: [Google]
python.png
140KB, 844x408px
Learn a real language
>>
>>8237868
>60 times
holy shit
>>
>>8237803
One of the BASIC variants like QuickBASIC or DarkBASIC is actually not a bad starting point. It's not object oriented but it's super simple and teaches you some good basics.

C++ or C are good places to go from there. Go with C++ if you want to learn object oriented programming (OOP) and do real world programming, go with C if you want to get closer to circuitry and write arguably better code.

Java is popular because it's somewhat "easier" than C++ but it is also a bad interpreted language (you compile to bytecode which is then interpreted by the JVM). Another major drawback to Java is that Java forces you to do things in OOP ways.

Python is popular but I've never learned it.

PHP is often a crappy language but it's not a bad introduction to OOP given how much simpler it is than C++ or Java.

You could try your hand at x86 assembly. The basics of the language aren't really that hard. However it also isn't very practical and you're not likely to do much with it.

Haskell is good to learn later on (for understanding the ideas and methods of functional programming). Even though you may not use Haskell ever again, knowing functional programming will make you a better programmer overall.

>>8237814
>Javascript
Are you high? Javascript is one of the more difficult more fucked up languages out there. It's object oriented but doesn't have classes. Functions are first class. It has bugs that can't be fixed because doing so would break existing code. It has to be run on a browser.

Probably the easiest approach to learning Javascript is through the Node.js implementation. It doesn't require a browser, has pretty good package management (better than most languages out there unless you're using the Nix package manager), and has a good set of core modules (libraries). The only major drawback (besides those mentioned above) is that it has a bias towards asynchronous code and that may be a bit hard for a beginner. The new ES6 syntax is pretty good.
>>
>>8237803
>>>/g/programming

I took my first steps learning programming independently by using the book Java Programming by Joyce Farrell. You should be able to find a free pdf copy online. It's not the best book out there, but the programming exercises given at the end of each chapter gave it a lot of learning value for a beginner. If for nothing else, get it for those exercises. I wouldn't say it prepares you to make any marketable projects, but it does prepare you to learn more. It's not a great idea to start with some development project anyway. After all, programming might not be for you.

If you do get your footing with programming logic, you can move on to something more commonly used in industry like C++ or Ruby, but what really makes it is working with programming libraries made by other developers.
>>
>>8237876
When one takes microseconds and the other takes milliseconds you tend not to care.

Use the tool that's appropriate for the job.
>>
>>8237884
>they are micro units, so it doesn't matter
Things brainlets say

t. not even a programmer
>>
>>8237803
Do you just want to learn programming in general or is there a specific thing you want to do?

Former: Learn C, you will learn basic aspects of programming in super detail and become knowledgeable about computers in general. You will appreciate the other languages deeply and it will be super easy for you to learn new ones.

Latter: Learn whichever language has an IDE or huge libraries for what you are planning to do. For example a neural network person may want to choose Python because it has super nice libraries for it. If you are interested in graphics you can choose C++ and use OpenGL. So it depends on what you want to do.

But what you are asking is super general. It's so general that every answer including mine can be proven wrong or ignite a flame war.
>>
>>8237879
To add to this. I don't think modern Javascript (in strict mode) with Node.js is a bad language. It is actually a surprisingly good language that has a lot of features. It is also (to the surprise of many) very fast since all of the Node.js modules are actually written in C/C++.

I do not think it is a language for beginners. The only reason you see retarded web designers using it is because they don't actually write in Javascript. Instead they write in CoffeeScript (nicer language that compiles down to Javascript) or they use ridiculous hand-holdy libraries like JQuery that do most of the work for you. There is a new language called TypeScript that compiles down to Javascript and is worth checking out as well.

Javascript has a limited number of data types that make certain things difficult. For instance it doesn't have an integer datatype, only float. Recently Mozilla has been working on a totally ridiculous and hacky (in my opinion) way of writing [a subset of] Javascript (named Asm.js) so that it can run at near native speed (currently it's running at half native speed, which is actually crazy good). Mozilla has also been working on another ridiculous project (named Emscripten) that allows software written in other languages like C to be compiled down to Asm.js so that you can run them in our browser. This is how they got ridiculous shit like the Unreal Engine 4 to run in the browser at near native speed.
>>
>>8237879
>Go with C++ if you want to learn object oriented programming (OOP) and do real world programming, go with C if you want to get closer to circuitry and write arguably better code

Go back to >>>/g/ retard
>>
What programming language has benefits in biomedical or chemical engineering research or industry?

I've already been learning MATLAB extensively, I know Excel is needed as well. Does anyone know any good books for learning Excel for engineers?

Should I start with Python as groundwork or C/C++?
>>
>>8237887
I mean, I could see the argument for a program that doesn't have a lot of code, especially for a beginner. If you're just looking for an easy language to learn on, why not try with Python or VisualBasic or something to that effect? Just learn the principles making shit like calculators and decks of cards then work over to something a little better like C++ or C# once you understand programming logic.
>>
>>8237887
If you're trying to do anything serious, then it becomes a problem real quick. Fortunately, since Python sucks for OOP, you can't really do anything serious with it.
>>
>>8237884
When we are talking about business, Speed and file fize is very important.
There's c++ for things like that.
For now he will be fine with python
>>
>>8237819
This is the entry level coder cynicism.
>>
Python will teach you good habits and good concepts.
>>
>>8237887
>opinion
>t. someone not qualified to have one
>>
Should I start learning C or C++?
>>
>>8237932
> *C or C#
ftfy :^)
>>
>>8237932
If you start with C, C++ will make more sense later.
>>
>>8237932

Oh wow starting on c? Just fucking stab yourself in the eyes bro.
>>
>>8237923
There is a reason why Pythons's compiler is called CPython.

>>8237932
Start with C. When you get comfortable with it switch to a more productive language.
>>
>>8237949
w-w-why? i like challenges...i think
>>
>>8237960
It's not a good first language. You have to do way too much shit to do even the simplest things. As an example, you have to include a library just to get a "Hello world" program up and running. You want to store "Hello world" to a string first? Well, too bad because C doesn't have a string data type. If you want something that behaves like a string, then you need to declare a char array. Then you can use the pointer to that char array variable like a string. You're going to have fun learning about pointers.

This is just the basic stuff. This is just the stuff you need to get very simple programs up and running. If you start with C you will get bogged down with all of the idiosyncrasies that other languages based on C dropped. It's good for programming operating systems (which is what it was designed for) and not much else. Don't get me wrong, Dennis Ritchie was a real fucking genius (as opposed to a fake one like Steve Jobs), but starting with C is like learning math by starting with calculus, skipping algebra and trig. I suppose it could be done, but why would you want to?
>>
learn functional languages.
The classic one to learn is scheme, but I recommend using racket as your first language. It's well documented, and is basically scheme but with as many libraries as python.
I recommend learning from a book called realm of racket.
If you wanna learn lisp instead, read land of lisp.
>>
>>8237803
R
>>
>>8237998
R is a bad idea. You should really learn a decent language first so that you can properly appreciate how bad R is if you ever find yourself in the unenviable position of having to use it.
>>
>>8237803
brainfuck
>>
>>8237803
FORTRAN
>>
>>8237960

You'll learn shit habits. I started on 8-bit BASIC and 6502 asm and still haven't gotten over it. Python is the best language to start out on.
>>
>>8237803
C and C++ if you're an engineer.
Mathematica or R or MatLab or Haskell if you want to do math
Python if you want to automate stuff on your computer and/or make small programs
>>
>>8238076

Someone who isn't a programmer would actually believe that garbage.
>>
>>8238070
You're arguing that a top down approach is better. Learning from Assembly -> C -> OOP languages is going to make you a better programmer overall, and doing it in reverse is how you pick up bad habits.
>>
>>8238105

No it's not. Good programming is algorithms and structure, not low-level tinkering.
>>
>>8238124
A combination of algorithms + structures along with low level thinking is going to help provide efficient, succinct code compared to someone with zero understanding of low level thinking.
>>
>>8238124
I'm not that guy but unless you're programming in a language built around heavy abstractions (like Haskell) then it's good to understand how that shit is working under the hood so that you don't accidentally do retarded shit. No need to do any low-level tinkering.

It's like how a person that understands how their operating system works under the hood will be less likely to fuck it up in a dumb way.
>>
>>8237803
Well, I would suggest that you should learn the basics of different variable types and smäller algorithms with a simple language - Basic, Ruby, Matlab. You don't need to master them, just get an idea of how the computer executes code, interprets data types, what conditioning and loops are. Most languages are similar in that way.

You can then move on to object orientation - Java, Python, etc. Here, the code statements will be similar, but you'll learn to build more complex code.

I don't know where C fits in all of this, haven't had any experience, but i suppose it is the next step?
>>
>>8237937
>C# or F#
ftfy (^:
>>
>>8238124
if you don't know low level you're going to shoot yourself in the foot and make silly mistakes often
>>
>>8237900
Also interested
>>
>>8238274

Give one example.
>>
>>8237879
>It's object oriented but doesn't have classes. Functions are first class.
>implying those are bad
>>
>>8238348
someone implements an algorithm that requires lists with random access (say something like dijkstra or some simple graph algorithm that he learned in class) and uses python dictionaries instead for ease of access (say he wanted to name the nodes instead of using numbers, who knows)

it turns out the keys they use hit the default hash function hard and it runs really slow, not even close to the performance he expected. he didn't know dictionaries didn't have constant time access.

-------------------------------------------------------------------------------------------------------------

someone's using C# and loves the expressiveness of LINQ. so much, that he starts using things like contains often. he doesn't realize that using contains in a list has a linear complexity, because he's used to contains being a fast function in hashmaps. this results to a terrible performance for the application.
>>
>>8237803
haskell
its god tier
srs
>>
>>8238376
why?
>>
Learn both Python and C.

They're very orthogonal in use and therefore complement each other well.

You can build extension modules for Python in C.
>>
>>8238378
what a good book/resource for learning C? Also what makes it different from C#?
>>
>>8238377
its very mathematical

expressions can be exchanged
srs, look at at a simple definition

abs n | n < 0 = (-n)
_____| n >= 0 = n

its type safe
syntax is hot

and also, fp
>>
>>8238348
Not that guy, but in C++ you can create a class constructor with an initialization list like this:

ClassName(T x1, T x2,...) : ClassName::InnerVariable1(x1), ClassName::InnerVariable2(x2),...
{}

Instead of

ClassName(T x1, T x2,...)
{
ClassName::InnerVariable1 = x1;
ClassName::InnerVariable2 = x2;
}

You probably can't tell the difference. They both produce the same thing. The difference is that the first method only uses initialization, but the second method uses initialization and a call to the = operator. For small parameter types, this doesn't matter. However, if you have a large parameter type you want to copy, then the doubled time of construction will be noticeable. I would consider this useful, no?
>>
>>8238388
what a good book would you recc for learning Haskell?
>>
>>8238395
learnyouahaskell

or go to lainchan and ask for books in the lambda board
>>
>>8238400
never heard of this shit before, why the fuck does lainchan look so spooky
>>
>>8238405
its for le leet haxors / cyberpunks
its /g/ incarnate
>>
>>8238365
They're most definitely not bad, especially Javascript's flexibility also allows one to create lambda expressions and anonymous functions. Scope chains and closures are also nice.

No, what I was saying was that they are not the sort of features that you want to throw at a programming beginner. Even experienced programmers may find themselves initially frustrated by Javascript's "weirdness".
>>
>>8238386
K&R from the 80s is actually a pretty good book. A lot of people talk shit about it saying that it's hard but it's actually very similar to any other beginning programming book. Honestly, give it a try before you pass it up (I made the mistake of avoiding it given what I'd read).

https://en.wikipedia.org/wiki/The_C_Programming_Language
You can find PDFs fairly easily. Make sure to read the second edition (first edition has some old ugly notation for functions that never caught on).

I don't know much about C# except that macfags use it a lot.
>>
>>8238409
thanks for telling me about it, idk shit about shit so ill just lurk
>>
>>8237900
Matlab and C++ are top priority. Python is used for smaller things
>>
>>8237932
C++, C is obsolete.

https://www.youtube.com/watch?v=KlPC3O1DVcg
>>
>>8238400
>>8238395
Seconding LearnYouAHaskell.
Yet Another Haskell Tutorial is worth taking a look at as well (it moves very quickly compared to LearnYouAHaskell but it has several gaps in explanations).
>>
>>8238420
I don't recoomne yet another haskell tutorial
it doesn't approach it very well

learn you a haskell mostly uses things you learned previously

yet another haskell tut just drops IO without mentioning what it is (at first)
>>
is lisp the most powerful language?
>>
i can program quite well, but i have no idea how to set up a website with member functionality like signing up or signing in, posting in threads, etc. Although, I would really like to learn to write such a website. I think I have to learn php or the like? Any tipps where to start? Javascript shouldn't be a problem if needed
>>
>>8238418
>Rust, C++ is obsolete
ftfy
>>
>all this dick swinging

Start with Python. The syntax is intuitive and you won't have to bother with OOP yet.

If you're a math guy you might also like Haskell.
>>
just go with python
>>
>>8238390

>C++
>not C or asm

Nice way to move the goalposts. Regardless, no matter how you cut it C++ is never going to be classified as a beginner language.
>>
>>8238472

Start with Python and cherrypy. Look into django when you're feeling horny.
>>
>>8238472

Out of the box Drupal does that for you but it's php. Drupal or Turbogears let you build similar things pretty easily. Nodejs is also a hotness.
>>
>>>/g/

Fuck off.
>>
>>8237803
What language should I learn and what "fields" as someone who is going for a Telecommunications and Electric Engineering major? Sorry for the retarded question, I don't know the first thing about programming, I learned some C++ in high school but never bothered to go above things like dynamic programming
>>
>>8238550

Aren't you going to school to learn that? Why be autodidactic in light of beginning a major? FWIW I studied various CPU architectures, Pascal and C when I did my EE but that was like 25 years ago.
>>
>>8238555
I looked up the courses and I have some programming classes so I will wait until then. What advice would you give to someone like me who is just starting this major? Did I choose right, there seems to be this eternal debate between CS and EE.
>>
>>8238563

If you're not interested in the field, prepare your anus.
>>
>>8237879
agree with the JS part, don't agree with any of the rest

go with Python, OP. learnpythonthehardway is good, but it doesn't really matter all that much in the end. have fun.
>>
>>8238530
>consumer technology board
>programming
Wat?
>>
>>8237821
https://projecteuler.net/
The single best way to test your programming knowledge
>>
>>8238605
>what is /g/dpt
>>
>>8238418
Then why is everyone shilling me to start with C, and then learn C++?
>>
Python, C, ASM, on this order
Maybe some Lisp for fun on the side

Don't learn: Java, C++, C#
>>
>>8238700
Why not C++? Isn't that used very much in industry now? It's mentioned all over 4chan science wikia
>>
>>8238703
There is nothing you can do on C++ and not on C. C++ programs are much slower. If you want to go OOP and fast coding go for Python. C++ is a freak of nature people get into without knowing.
>>
>>8237899
Which part of that is wrong?
>>
>>8237803
You don't learn programming from books, you learn it from trying to build things; checking stack overflow when you're stuck; improving your working code, and then building something else.
You should learn about the fundamentals of programming (data structures, complexity, objects/classes, etc...) from a book, but not any specific language.
That being said, python is a good language to start with.
>>
C, c++, python, asm
In this order
>>8238713
>C++ programs are much slower
Citation needed
Only compiliation is slower, but a rookie won't notice it since you can only feel otbon bigger projects
>>
File: p.png (205KB, 546x431px) Image search: [Google]
p.png
205KB, 546x431px
Go with Python and start here

https://youtu.be/k6U-i4gXkLM?list=PL57FCE46F714A03BC
>>
>>8238021
Underrated post
>>
>>8238713
>C++ programs are much slower
...and you have no idea what you are talking about.
>>
File: DPT.png (389KB, 934x1000px) Image search: [Google]
DPT.png
389KB, 934x1000px
So many posts, so little substance. Most of the thread just looks like dick waving and opinions to me.

>>8237814
>>8237880
>>8238400
>>8238420
>>8238525
>>8238596
>>8238609
>>8238880
The most concrete answers, right here.
>>
I say evaluate what you want to learn programming for and just learn the language that best suits that job. Might as well get to where you wanna go as direct as possible instead of beating around the bush.
>>
>>8238521
That was my first post in this thread, buddy. I just wanted to give an example about how knowing the lower level nuts and bolts of a language can be useful.
>>
>>8238880
I know you watched that just becayse it has MIT in the title.

But you could just get a book published by a computer scientists or a professional dude in 2014 - 2015 or this year and read it instead.

That video is also from 2009, and the dude looks old as fuck. Idk what's with this fetish of learning from old damaged people.
>>
>>8238713
This is wrong. Unless the person programming C is a built in compiler and optimizer, many projects will run faster in C++ because humans will be able to find a better way to program it with the more flexible tools given.
>>
>>8237932
What do you prefer? A calculator (C++) or a slide ruler (C)?
>>
>>8238958
>I know you watched that just because it has MIT in the title.
Maybe I found it easier because it's from a known university, but if it was from some Swedish university and I'd watch the first 3 lectures and like it, it would have made zero difference to me.

The other complaint comes as a huge surprise. Python is more than 25 years old, how is it relevant if it's from 2008 or newer, and what's the problem with old guys?
>>
>>8238756
>C, c++, python, asm
What a horrible order. The idea of my order was to go from high level to low level, including a study of the compilers. The standard python compiler is written in C, so you go ahead and learn C after Python. Then you realize that the compiler in C is written in ASM, (duh), so you go ahead and learn ASM, which is the hardest of all. The C++ compiler that I know is written in C, so that you know.

>Only compiliation is slower
OOP programs are inherently slower, and any specific faster function in C++ can be built in C, the thing is you actually have to know how to build it. Even Python can be made very fast if you avoid high GFlop/s count by importing modules. But you need to know ASM and C to do this consistently.

>>8238910
Not an argument. This is what I see with the C++ programmer, he is too lazy to even write an argument.

>>8238959
>many projects will run faster in C++
You can research it yourself. Projects are easily made in high-level languages, but the compiler has to compensate for this by making bigger programs. Since you said this, it is fair to say you didn't understand what I said and don't know anything about compilers.

I don't what is worse: C++ coders defending C++ because that happens to be the language they have arbitrarily picked, or someone who doesn't code in C defending C, which I have seen already.
>>
>>8237803
If you're interested in learning programming and not just a programming language learn C/C++

It'll force you to learn how to manage memory, and think about space/time complexity, while learning about data structures. What you should do is try to implement your own C++ data structures (vectors, linked lists, hah tables, heaps), sorting and search algorithms and compare their space/speed requirements depending on the implementation changes you make.
>>
>>8239071
https://www.quora.com/Is-C++-slower-than-C

>OOP programs are inherently slower
only if you use virtual methods poorly.
else they are as fast as the others
>>
Who /Haskell/ here
>>
>>8238958
6.00 is an AMAZING set of lectures, an absolute classic. I've never seen something as good at that.

so fuck off, you prejudiced, jealous faggot
>>
>>8239071
>Then you realize that the compiler in C is written in ASM, (duh)
>so you go ahead and learn ASM, which is the hardest of all.
Yes this happens when you do things in the wrong order.

>OOP programs are inherently slower,
Not with C++, there are no performance differences between C/C++ unless you are using virtual functions or throwing exceptions.
>>
>>8239071
>defending C++
We are just pointing out that you are wrong.
>>
>>8239071
>I copy Linus Torvald's opinions without knowing shit about programming
>>
>>8237803
If you don't have something specific that you want to do, then Python seems fine.
>>
>>8238522
>>8238525
thanks. ok, that are programming languages... what I need to know is how to combine html and server-sided applications. One of the most important questions of mine is where and how to host my website. I tried nodejs today and I understand how it helps to call a application on a server. I still don't understand how to design the website itself and make use of the apps.
>>
>>8239194
there are multiple different ways to do that stuff. if you only want to create a website you can pick search on the internet for the best ones, if you want to understand how networking works i suggest this book https://www.amazon.com/Computer-Networking-Top-Down-Approach-6th/dp/0132856204 . it's designed for students, and it's pretty easy. when you have read this you should be able to understand what all those websites providers are offering you
>>
Damn, /sci/ is much better at this than /g/ ever was.

Codeacademy.com is a great step by step place. Just make sure that you fiddle about with Python on your PC as you learn.
>>
So I got a serious question.
With everyone shilling Haskell - why is it actually that good? Is it efficient to build stuff with it? Do you just use it to calculate stuff as one of scripts?

I personally use a lot of Python and C++ for data science and ML - what would Haskell offer me in that regard?
>>
>>8239231
/g/ don't actually know how to do anything they just spout torvalds and stallman memes.
>>
>>8239300
Haskell is good for learning it, trying to build something and failing because you have to constantly fill the gaps between available libraries, giving up and resorting to something more practical, and then being constantly pissed off at the new language being so primitive. Unless one has picked some Lisp derivative, then they'll be pissed off at the inability to check your code before running (and that generic functions can't do dispatch on the return value). Or if it's Scala, then they'll be pissed off that its type inference sucks.

If you want something more practical that's still rather advanced (generic functions, optional type checking with types parametrizable by values), try Julia. It's a lisp with Matlab syntax, more or less.
>>
>>8239334
There are about a half-dozen guys on /g/ who know their shit. The rest of the multitude tend to be idiots.
>>
>>8239194
>>8239194

Are you fucking retarded?
>>
Why is it that computer science majors fetishize speed so much?
Maybe it's important for your data transfer and web stuff, but for scripts and even many quick simulations, much of the scientific computing stuff, it's much more important to have other people being able to take over your code and such. Even a slow simulation isn't the end of the world, if it's something you may run over night.
>>
File: Ruby.png (673KB, 883x596px) Image search: [Google]
Ruby.png
673KB, 883x596px
What do you guys think of Ruby?
>>
>>8239534
>Even a slow simulation isn't the end of the world, if it's something you may run over night.

Are you serious? I run simulations and computations on a daily basis that would take a year to run on on your typical i7. Speed, parallel computing capability (which effectively increases speed), and a deep understanding of algorithms are immensely important in scientific computing.
>>
>>8239534
optimizing time complexity gets drilled into your head from the start. its all they care about and what theyll jerk each other off to.
>>
>>8239563
I'm not saying it's not crucial to have PhD's who do your molecule and fluid simulations on fast C code, but a lot of code is also translating data, scripts for augment data, automatize, do statistics, etc. etc. and there the speed doesn't matter. In other words, everything which is not about huge loads of information being worked on.
People like to speak as if you can learn C/C++ and then you're done with figuring out programming
>>
>>8239583
Indeed, programming and programming languages is much more of a toolkit than anything else, and while its possible to do more or less anything in these environments picking the right tool for the job just helps a lot.

People tend to shit on Python a lot on 4chan, but if I need to parse some data quickly, I won't do it in C and if I want to implement some complex algorithms I wont do it in Perl.
>>
>>8238684
It's a /g/ meme like "install gentoo", "read SCIP", "free as in freedom", and "beginners should learn Haskell". Notice that they never have an argument, they just repeat it ad nauseum like autists.
>>
Anyone who thinks Python isn't fast is a commentator, not a programmer.
>>
>>8239534
>implying there's a trade off of speed and readability

Computational complexity is one of the cornerstones of computer science. we compare and evaluate algorithms based on it. We care about speed, because in useful programs your implementation is the difference between being done in minutes, hours, or days.

Python is fine for most things, but being a great Python programmer doesn't demand much computer science background. It's a powerful language, but it can be very limited in its use. Why we're saying use C or C++, is that with C/C++ your forced to confront a lot of the things Python does for you, and you understand a lot more about programming through it.
>>
>>8239583
OK, I agree. It is really all about choosing the right tool for a specific job. While I really enjoy writing code in C/C++ to accomplish tasks requiring huge amounts of computation, if I just need to play around with resultant data, maybe visualize some stuff, or write quick one-off scripts to get shit done, Python is my current "go to" language. C/C++/Python are a killer combination for my general needs. I rarely need to pull another language off of the shelf. But, what I do is definitely specialized.
>>
>>8239534
Because computer science majors study computer science, whereas the topics you describe belong to the field of software engineering. Which is certainly *related* to computer science, but they are still very distinct topics of study.
>>
File: 1380718129866.png (41KB, 488x441px) Image search: [Google]
1380718129866.png
41KB, 488x441px
>>8238713
>There is nothing you can do on C++ and not on C

You have that backwards. There is (almost) nothing you can do in the C language and not in the C++ language.

>C++ programs are much slower

C++ programmers are just as fast as C counterparts if you code them the same way.
>https://en.wikipedia.org/wiki/C%2B%2B#Philosophy
>Any features that you do not use you do not pay for (e.g. in performance).

>OOP and fast coding go for Python

OOP fucking sucks in Python as there is no data protection.

>C++ is a freak of nature people get into without knowing

Translation: I don't know anything about C++ but let me repeat things others who don't know anything about C++ have said.
>>
>>8238714
C isn't any lower level than C++ and neither is "getting to the circuitry".
>>
>>8237879
I agree that javascript is shit, but I wouldn't call Java a "bad interpreted language".
>>
>>8238917
Take your pedophile cartoons back to >>>/a/.
>>
>>8239622
You realize space and time complexity make up like half the field right? Surely you took a theory of computation class
>>
File: black.jpg (951B, 300x168px) Image search: [Google]
black.jpg
951B, 300x168px
>>8237803
if you run linux, learn python, BASH or c++. Yes they're extremely different but both can be pretty useful for the linux OS.

Also if you mean specifically "programming" python isn't technically a "programming" language, it's an interpreted language (just a bit of trivia). So if you wanna learn a language that you can say is a "programming" language to a professional then I would go with c++.

Also just for more info, languages are, for the most part, either interpreted or compiled (read by line or read then put into an executable).
>>
>>8237884
this; ALSO C is compiled while python is interpreted. Which leads to two completely different performances.
>>
>>8239656
That image originated on /g/ and is a traditional OP image for the daily programming thread. Take your forced memes back to >>>/s4s/.
>>
>>8239560
Became very popular in the mid 2000's due to it's Rails web framework. However Node.js has now taken over that market share and there really isn't any reason to use Ruby on any new projects unless you have to for some specific reason.

For web go with Node. For general purpose go with Python.
>>
>>8239655
I don't think Javascript is shit. Read my follow up post. >>8237898

Java on the other hand is shit. I'm not saying there's anything inherently bad about interpreted languages (though I prefer languages with a REPL) but Java somehow managed to obtain all of the negative traits if interpreted languages (i.e. slow as shit) while gaining none of the benefits (i.e. being able to step through the code for debugging).

It's also worth mentioning that Java only recently got lambda functions after years of stubborn opposition to them.

Java is the Kim Kardashian of languages. It is only famous for being famous but is otherwise shit tier in every respect.
>>
>>8237803
OP you're not german, are you? cause i'd have the perfect book then
>>
>>8239692
>>8239700

Formally, a language isn't interpreted or compiled. That is only a property of the implementation. There are many languages that have both an interpreted and a compiled implementation (python for instance).

Only a retard would say that interpreted languages aren't programming languages. Scripting languages are also programming languages.

There are languages that are not programming languages such as markup languages (e.g. HTML, CSS, Markdown, reStructuredText, etc..). These languages are not Turing complete and it is not possible to program them for arbitrary tasks. Contrary to popular belief, TeX (and by extension LaTeX) are Turing complete languages but whether or not they're really programming languages is a matter of debate.
>>
>>8239752
whats that book if you dont mind?
>>
File: 9783836236331_800.png (881KB, 1004x800px) Image search: [Google]
9783836236331_800.png
881KB, 1004x800px
>>8239837
ye sure.
python book. starts with the very basics, but also has chapters on net-stuff and .. other complicated stuff i don't yet know about, because i haven't been able to work through the whole thing, but still. 's pretty good
>>
>>8239848
i might check it out. i actually have a bit of an issue with german books on pretty much any comp sci subject. in my opinion most of the ones ive read are too up their own ass, just like most german academia, to actually do a hands on approach on teaching you things. I usually enjoy the colloquial easy to understand language a large portion of english books use to teach things.

german books are often a superb reference if you need to cite or look up very specific things. but I never ever use them to teach me basics of anything.
>>
>>8239560
Being phased out and it's slow as shit.
>>
>>8237932
Start with python, then thank me later
>>
>>8239861
now that you mention it, i know what you mean.
part of the language problems may just be the result of the complexity of certain topics, but i wouldn't count that book as one of those.
my uni's library had it, so i was able to borrow it. if you have some opportunity like that you can just check for yourself.

btw, interesting that german books are good references haha
>>
File: kodewithkloss.png (1MB, 1357x1281px) Image search: [Google]
kodewithkloss.png
1MB, 1357x1281px
Start with SQL

>Free development tools for major vendors

>Free datasets to practice with

>Great documentation

>Abundant lessons

>Real world problems to solve

>Highly portable

>Bonus: learn about hardware, networking, security, high availability and disaster recovery, performance and index tuning, become God of dba.stackexchange.com
>>
>>8240151
While SQL is a good language to know, it isn't a general purpose programming language.

Moreover there are many different implementations of the SQL standard and they all differ on the features they support or how they are implemented. It is better to start with a more standardized language.

That said, database design is one of the more useful things to learn as it gives you rules for how to organize information at an abstract level.
>>
>>8240151
Dafaq is going on with that code? Its gibberish.
>>
>>8240163
It's not code. It's her failing at Unix commands.

The picture is a well known /g/ meme which makes sense given that the post it is attached to has some retard suggesting fucking SQL as someone's first programming language.
>>
>>8240151
I agree with anon. SQL is easy to learn and widely used in the corporate world. This is usually the first step into the meme known as big data.
>>
>>8240169
That makes more sense. It looked like a console command from first glance. How the hell do you fail unix commands. You can literally google the commands.
>>
>>8240170
Program me a fitzbuttz in SQL
>>
File: download.jpg (7KB, 225x225px) Image search: [Google]
download.jpg
7KB, 225x225px
>>8240156
This is sort of true, but the ANSI Standard is applicable (mostly) in all the major vendor implementations.

>>8240169
Has never written a stored procedure.
>>
>>8239515
listen nigger, I didn't write
>i have no idea how to set up a website
without a reason. just read my fucking postings or shut your autistic mouth you piece of shit
>>8239215
thank you. i think i give the topic a try and read the book
>>
>>8237803
For scientific and engineering programming I assume? You really don't need a textbook, I always tell students to just do the official Python tutorial:

https://docs.python.org/2/tutorial/

You can learn the language in an afternoon then just check out what numpy, scipy and sympy has to offer. That's more than enough programming for most of the fast development / slow code you will be doing in your career. Stackexchange has a huge python community and there are plenty of open source repositories on the internet to help you learn (Python is one of the few langauges where you can actually hope to understand someone else's code).


Obviously if you don't know anything about numerical analysis it would help to pick up a textbook, but a formal background is generally not needed and most textbooks are too shallow anyway.
>>
>>8240532
Probably you do not need to read the whole book, you need just to read about levels 3,4 and 5. Those are about applications, transport and networking. When you read those you should be able to understand how to theoretically set up a network and what a server need to work. But it tells you nothing about how to set up the website. I would read it if I was serious in what I was doing.

The latter part of the book is about the physical level and the link level. Those are completely invisible to the website and to the browser, so you would need those only if you personally owned the physical server machine. They are still interesting since once you read those you will have knowledge of how the entire Web operates, except of how inputs are sent in a cable.
>>
File: You don't know shit.jpg (75KB, 332x303px) Image search: [Google]
You don't know shit.jpg
75KB, 332x303px
>>8240265
Yes, mostly, but the problem isn't that it's just a matter of time before it's all supported the problem is that no vendor supports the entire standard and no vendor will ever support the entire standard. The reason for this is that to be compliant with the SQL standard you only need a ridiculously basic amount of functionality (basic commands), the rest of the standard is all just suggestions.

As such you have
>vendors who implement different functionality but call it the same name
>vendors who refuse to implement some functionality because they disagree with it
>vendors who extend SQL's functionality in totally arbitrary ways that aren't supported by other vendors
>etc..

As an example one can look at the stored procedures you mentioned. How you write a stored procedure and the functionality it has will vary wildly depending on your implementation. Many implementations include language extensions (eg. Oracle's PL/SQL) or even let you write the stored procedures directly in Java, C, C++, etc..

You have to be fucking brain damaged to think SQL is the way to go for someone who wants to learn to program.
>>
>>8239194
The term "server" is a generic term used for hardware as well as software when it is acting in some client-server relationship with something else. To host your website you need to run server software on a computer (confusingly also called a server). If you're just coding something at home then you can run server software directly on your computer and then open up a browser window and view your page locally. Another option if you're working at home is to put your software up on something like Cloud9 (free virtual servers that you can dick around on for development purposes, they also come set up with linux and any server software you need in case that shit is troublesome for you). If you're running the software on your own computer and need to access your webpage from somewhere else (i.e. if you want to show it off to your friends or something) then you can open the ports on both your firewall and your router (port forward that shit) so that others can access it (you may also need to change some configuration on your software).

When you decide to actually launch your website for real then you will want to pay for hosting (the type of hosting will depend on the type of service you're running as well as your budget). Said server host will typically help you in installing server software on it and moving your website over (cheaper hosts don't do this). Don't start searching for a hostname until you're actually ready to buy it because jerks will buy it up if they find out somehow.

Cloud9 is hosted at https://c9.io/

Server software:
Apache (for PHP+MySQL, somewhat complicated to set up but very powerful)
NGINX (same as Apache but very simple and less powerful)
Node.js actually lets you start servers on different ports directly in your code.
No idea about Django.

Check out Nodeschool if you want to get more acquainted with Node.js.

>>8239215
Ignore this guy. While learning networking is good knowledge to have it is largely orthogonal to web dev.
>>
>>8239759
Although I would set "is programming language" and "is Turing complete" equal. There are actually strongly typed systems that avoid features rendering them Turing complete, but as tradeoff they get decidable type (i.e. basically Taskis no-truth theorem making things icky)
You can do a whole lot without full completeness
>>
>>8240600
I'm grateful for your time and substantial explanation. This is exactly what I needed as a starting point.
>>
File: do_you_not.jpg (9KB, 304x228px) Image search: [Google]
do_you_not.jpg
9KB, 304x228px
>>8240571
I've spent the last decade working with Oracle and SQL Server in large enterprise environments, so you're telling me things I already know. Basic DML and DDL are the same, which makes it far more portable as base knowledge than other suggestions like learn C and then Python.

To me the fact that you can mix procedural languages in gives you far more options down the line (even MS lets you mix in C# and now R). The variation here is whatever.

You can call me brain damaged for wanting developers to learn SQL, but I've spent a lot of time fixing the very expensive mistakes of developers who didn't. Many applications use relational databases. The sooner you get used to thinking in sets and avoiding querying anti-patterns the better. Or just keep paying my consulting fees. Whatever.
>>
>>8238009
>R is a bad idea. You should really learn a decent language first so that you can properly appreciate how bad R is if you ever find yourself in the unenviable position of having to use it.
t. engineer
>>
>>8240776
But it's true, R is god awful.
>>
>>8240759
Developers should learn SQL. More than that they should learn database design (with normal forms and everything), but I don't think it should be the first language they learn if their stated goal is to learn programming in general.
>>
>>8237803
1st suggestion
Find a few personal projects, work towards completion
2nd suggestion
Learn Python the Hard Way
A good resource

/thread
>>
>>8237803

I have no idea why this is on /sci/ and not /g/.

Anyway, what do you want to do, OP?

Want to crunch numbers? Learn Matlab or Octave, and maybe FORTRAN if you're doing engineering work. FORTRAN's easy enough, if a bit archaic. Scheme isn't bad in this space, as long as you don't need the performance.

Want to do statistical analysis? Learn R.

Want to write UNIX programs or work with embedded systems? Learn C.

Want to be a sysadmin? Learn shell scripting, sed/awk and perl. Python's an option here as well.

Want to write backend web code? Learn PHP or Java for business stuff, Javascript/Node.js for games or whatever.

Want to write frontend web code? Learn Javascript and some of the frameworks for it. You'll need an understanding of HTML and CSS as well, although I personally don't consider those programming languages.

Want to write programs for Windows? Learn C# or VB.NET. C++ is an option here as well.

Want to write programs for X Windows? Learn C/GTK+ or C++/Qt.

Most of this isn't hard and fast. Python will work in most of these spaces, and it's easy enough to learn. Once you learn one programming language, it's easy enough to pick up more, so just learn something.
>>
>>8238684

Probably because people on here are fucking idiots and you should probably ask this question somewhere other than 4chan.

C isn't obsolete (no matter what Stroustrup says). It's widely used in systems programming, and it's the traditional language on UNIX. If you're going to write programs for a UNIX environment, consider C.

C++ has all the capability of C (it's almost, but not quite, a superset of C) but gives you additional functionality that makes programming large systems easier.

You generally use C and C++ for different things, and while their syntax is more or less the same, you don't write C code like C++ code (or vice versa). Think of it like a pickup truck and a sports car; both will get you to the store, but you don't drive a 1971 F-250 the same as a Porche, and while you can haul gravel in your Porche, it's not the usual way of doing things.
>>
>>8241290
>not using C++ as C + STL
you don't know what you're missing out on. seeing C++ as C with some extensions has wide benefits
>>
>>8241297

I'm a UNIX guy, so the gap between C and C++ is a lot more noticeable than on, say, Windows. All my C code is written for a POSIX environment, so I'm not lacking for functionality. Microsoft's dev tools are geared toward C++ with C as an afterthought.

Besides, if you've using C++, why not use all its functionality? C++11/14/17 have a lot of kick ass features, so if you're looking at C++ like "C with the STL" you're missing out on a lot of cool shit. And if you're using all that, well, it doesn't look much like C anymore, does it?
>>
>>8241316
What the fuck does the first line have to do with anything? I code on ubuntu with vim usually, you IDE doesn't mean shit. How the fuck is the gap noticeable? Compile with g++ instead of gcc, hurr what a change

C++11 doesn't have any features that add to the way I program in any noticeable way. And no, it still looks like C + STL if you use the core of the C++11 features that relate to STL use.
>>
>>8241290
What parts of C are not included in C++?
>>
>>8241327
http://stackoverflow.com/questions/3879636/what-can-be-done-in-c-but-not-c
things the STL does better basically
>>
>>8241324

Settle down Beavis. You need to get your blood pressure checked.

Most of the people that view C vs. C++ the way you do are Windows programmers. I've met very few UNIX programmers that see things that way. Hence the assumption you were coming from a Windows environment. To most Windows programmers, the IDE very much affects their viewpoint of the language.

Anyway, I honestly can't see how you _can't_ see a gap. Sure, you can compile C programs with g++, but what's the point? If you're going to write C++, write C++. If you want to manage your memory with malloc()/free(), just use C. If you want to manage memory with new/delete, well, that's not the way things are done anymore and you need to catch up. Best practices exist for a reason.

If you're not using C++11/14/17 features (and you're not stuck in a legacy codebase), you're missing out. The new features impact the STL in some pretty significant ways.
>>
>>8241327

It's not that C has things that C++ doesn't, but that certain things that went into the C99 and C11 standards haven't made it into the C++ standard yet. It's mostly minor stuff that you won't run into under normal use.

Wikipedia has a page on it:
https://en.wikipedia.org/wiki/Compatibility_of_C_and_C%2B%2B
>>
>>8241354
>Settle down, I was just being retarded on purpose!
fuck off with your retarded elitism. linux is not UNIX.

>that's not the way things are done anymore and you need to catch up
exactly, you're being retarded by even mentioning malloc and new. let everything go into the stack and don't fill your code with manual memory management, being malloc or new.

>The new features impact the STL in some pretty significant ways.
not in ANY way that's been noticeable by me, and trust me, I use the STL heavily and to its full extent. I do competitive programming and you will see me abuse the STL using shit like legacy GNU extensions to get all juice out of it
>>
Can anyone recommend a good learning plan regarding programming for computational economics? Preferably something I don't strictly need to take a class for
>>
>>8237900
>Does anyone know any good books for learning Excel for engineers?
learn R, it's Excel on steroids
>>
>>8241386
>I do competitive programming
undergrad detected
>>
>>8241386

>linux is not UNIX

Who's being a retard, now?

>let everything go into the stack and don't fill your code with manual memory management, being malloc or new.

Which means you don't do any serious programming at all.

>I use the STL heavily and to its full extent.

If you're not using C++11 and beyond, no you're not.

>I do competitive programming and you will see me abuse the STL using shit like legacy GNU extensions to get all juice out of it

In other words, you don't do any real-world programming at all.
>>
>>8239759
i would say *TeX are legitimate programming languages, but they're in with brainfuck in the "you would have to be literally insane to use this for more than anything but a personally set hobby challenge" category
>>
>>8240777
>>8240776
>>8238009
R may be awful for advanced users and people who really get down into the nitty gritty of comparing implementations but for the vast majority of end-user programmers none of that matters.
>>
>>8241400
>Who's being a retard, now?
you http://unix.stackexchange.com/questions/4091/is-linux-a-unix
>Hurr I said you shouldn't use new but now I say you should
fuck off http://stackoverflow.com/questions/6500313/why-should-c-programmers-minimize-use-of-new
>If you don't use C++11 you don't use the STL fully
it's only minor improvements, you would know if you weren't retarded. look at the generic STL structure and how little functionality C++11 adds: http://www.cplusplus.com/reference/map/map/
>In other words, you don't do any real-world programming at all.
so because I do competitive programming it means I don't do other kinds of programming? you're tremendously retarded, and it's clear that your only knowledge comes from random googling. your only argument so far has been "hurr you're a windows programmer so I know more than you!" when I program in any platform and "I do portable programming in UNIX so I know what I'm talking about" when the standard gcc/g++ compilers are already portable
>>
>>8241430
Aside from the serious and quite valid arguments which describe why R sucks as a programming language, I can comment about R experientially. I have written a lot of non-trivial code in R. I have been paid to write C libraries and interface them to R. My code is available on a major R repo.

As a programmer, when using R, I find that I am constantly in a state of being pissed off about the language, its construct, its horrible performance. I don't have that feeling at all when programming in C++, Python, or even Java. Well, to be fair, I do occasionally get pissed off when I am using Python, but it is exponentially more pleasant to work with than R.
>>
>>8241453

>stackexchange link about Linux vs. UNIX, didn't read

Not that it matters, but Inspur K-UX is a UNIX. It's a Redhat derivative with the Linux kernel and gcc. So yes, insofar as UNIX branding matters, there is in fact a Linux distribution that is UNIX.

But all that irrelevant because from a programmer or sysadmin's perspective, there's no difference. It conforms to POSIX and the SuS. It's UNIX for anything that actually matters. The difference between Linux and any particular UNIX isn't any greater than, say, HPUX and AIX.

>another stackexchange link

I'll come back to this one.

>it's only minor improvements, you would know if you weren't retarded. look at the generic STL structure and how little functionality C++11 adds: http://www.cplusplus.com/reference/map/map/

Which means you haven't actually looked.

C++11 changes everything, and C++14 refines on that. You'd know that if you actually looked into it instead of looking at a comparison chart.

The paradigm has changed in C++11. If you're not taking advantage of move semantics, smart pointers, lambdas, etc. then you're not getting the full benefits of the STL.

>so because I do competitive programming it means I don't do other kinds of programming?

No, actually, we all can tell because you act like a butthurt child with no social skills. You immediately jumped to hostility when I assumed from previous experience that you were a Windows programmer (and explained my reasoning). You also seem to think being a Windows programmer is somehow an insult, which means you have that new-to-linux "I'm better than those stupid Windows users" mentality that everyone else grows out of. You also seem to think that non-portable programming is acceptable for anything besides very system-specific use cases.

All this screams that you have no experience in the real programming world. I hope you like indie game development, because you're unemployable in the real world.
>>
>>8237803
pseudo code
>>
>>8237803
depends:
>CE
cisc/risc asms, C, HDLs

>graph theory
sage => pyhon

>probability
R

>useless abstact math
haskell

>numeric analysis
MATLAB

>analysis
Mathematica

>combinatorics
python, C++/C

>CS fags
prolog

>physics
python, C++/C
>>
>>8241522
>>useless abstact math
>haskell
This is a stupid meme desu senpai. Why would anyone in their sane mind do useless abstract math in a logically inconsistent language? (like any Turing-complete language)
>>
>>8237803
go like this

risc asm -> cisc asm -> c -> c++ -> any imperative programming language
>>
>>8241458
Personally I find myself having those exasperation moments a lot more with Python than with R, but I think that must come down to personal preference for languages.

And I think I would class you as one of those advanced users I mentioned, the people who really do notice and care about performances issues.

I don't think the people who just do basic scripting using pre-made packages are going to notice those problems, however. All they care about is how easily they can manipulate their data and prepare graphs.
>>
>>8238684
Its like /ic/'s loomis.
>>
>>8241483
>we
you're a faggot. a single person isn't "we"
you used the windows programmer shit as an insult in the first place with your retarded
>Most of the people that view C vs. C++ the way you do are Windows programmers. To most Windows programmers, the IDE very much affects their viewpoint of the language.

>C++11 changes everything, and C++14 refines on that. You'd know that if you actually looked into it instead of looking at a comparison chart.
C++11 gives a bit of convenience and nothing else. for the way I use the STL, it doesn't help me AT ALL. you going "hurr I know better because I say so and you only give me charts" is idiotic.

I worked as a dev for oil industries for a while and now I do scientific computing for math research
I can very well tell that you're retarded, and continuing to claim I don't know what I'm talking about while dismissing everything I say won't make you right
>>
File: received_1711983455731334.jpg (16KB, 512x359px) Image search: [Google]
received_1711983455731334.jpg
16KB, 512x359px
If i learn programming, what kind of things would i be doing in my job?
I mean, would i be creating little programs that will be part of bigger programs?
>>
>>8241687

>you used the windows programmer shit as an insult in the first place

No, you read that as an insult because you're "edgy." That wasn't an insult at all, merely a statement of my experience of dealing with UNIX and WIndows programmers. Most UNIX programmers view C and C++ as very distinct languages, most Windows users aren't concerned with the difference.

But you chose to interpret that as an insult because you're a child.

>C++11 gives a bit of convenience and nothing else. for the way I use the STL, it doesn't help me AT ALL. you going "hurr I know better because I say so and you only give me charts" is idiotic.

You want to go against current best practices, that's on you.

>I worked as a dev for oil industries for a while and now I do scientific computing for math research

Yeah, and I'm the tooth fairy. I've seen your type before. They never last long.

I'm not going to argue with you anymore. Grow the fuck up or no amount of your supposed "expertise" will keep you employed.
>>
>>8241690

It really depends. There's programming jobs for just about everything you can imagine.

There's the large corporate jobs where hundreds of developers are working on a single codebase all the way down to little indie shops that set up shopping cart systems for website retailers. A buddy of mine does nothing but write PL/SQL code to import and export data between medical databases. I do what would probably considered devops today, although it wasn't called that back then (basically, I'm the sysadmin with programming experience, so I write a lot of the code that makes an ISP work - mostly C and Perl).

You'll likely gravitate toward a particular niche as you learn.
>>
>>8241700
>hurr everything you say is a lie but I'm knowledgable because I just am
>listening to a retard = growing up
you're retarded
you haven't shown shit other than ridiculous dismissal of everything I presented to you based on nothing but "muh opinion". using C++ as C + STL is very, very useful and powerful for many applications that are good fits for C

feel free to fuck off, self important idiot
>>
>>8239710
>a traditional OP image for the daily programming thread
What you meant to say, I believe, is that whenever OP makes a daily programming thread with that image, he traditionally gets called a faggot, because anime is for faggots.
>>>/a/
Go back desu senpai.
>>
>>8241713
I'm interested but i don't know if i would like to live off programming related jobs.
I always though that you would have to do things related to develop software in the mosr efficient way that you can.
Also is Informatic Security relates to this field?
>>
>>8242118

A large percentage of programmers don't work on end user code.

Efficiency isn't always that important. For the stuff I work on, it doesn't matter that much. If you're doing server-side networking code or event handling it's a higher priority. If efficiency was top priority, we'd all be writing in C/C++/FORTRAN/etc.

I'm not sure what you mean by "informatic security" - that's a huge field. Are you talking about secure coding or writing code related to security? For the former, yes, you want to keep security in mind (sanitize your inputs, don't overwrite buffers, don't trust user-supplied data, etc.). For the latter, well, it's not really my field - pretty much all the security tools I use are open source - but there are companies that specialize in security auditing and whatnot. And of course, there's always the NSA :)
>>
>>8238609
this
>>
File: 1.gif (227KB, 352x240px) Image search: [Google]
1.gif
227KB, 352x240px
>>8242567
Oh great i get it, efficiency is only important when you're working with stuff that people will install on their computers or videogames for example and web related stuff like scripts for web pages and all those things.

>I'm not sure what you mean by "informatic security" - that's a huge field. Are you talking about secure coding or writing code related to security? For the former, yes, you want to keep security in mind (sanitize your inputs, don't overwrite buffers, don't trust user-supplied data, etc.). For the latter, well, it's not really my field - pretty much all the security tools I use are open source - but there are companies that specialize in security auditing and whatnot. And of course, there's always the NSA :)

I was referring to for example Web security things related, like for example mistakes of the coding of the page or things like those.

i'm 18yrs old and i really haven't work in all my life. i'm wonder if i'll be happy coding databases or things like that.

i have tried to selftaught myself about python like the op but i learned to make a simple calculator but then i go lazy and i don't work anymore.
>>
>>8242103
>hurr go back to /a/
>uses desu and senpai
That's actually nice baiting but also a severe case of hypocrisy.
>>
>>8237803
Depends, do you want to code for fun or to get a job?
>>
>>8243622
It's the 4chan filters.
>>
>>8243629
it's not like they were added yesterday, baka senpai.
>>
>>8243629
sure it is, >>>/a/ you degenerate pedophile.
>>
>>8243613

In general, any programmer that's working with code that the public will see needs to learn the basics of secure coding. In your example, if you were doing web programming, you'd have to learn things like preventing cross-site scripting (search for XSS), preventing SQL injection attacks, etc.

There are people who make money doing code security audits, but you gotta walk before you can run. That's not a job for a new programmer.

>i'm 18yrs old and i really haven't work in all my life. i'm wonder if i'll be happy coding databases or things like that.

Can't tell you that. Some people like it, some people don't. However:

>i have tried to selftaught myself about python like the op but i learned to make a simple calculator but then i go lazy and i don't work anymore.

The best people in the field (as far as coding go, anyway) are the ones that get obsessive about it in their youth. If you don't have the drive to program, you can still be a programmer, but you aren't going to be a great one.

That's fine, though. There's plenty of need for rank-and-file coders, and you can still make a lot of money.
>>
I'll post this here because I'm going to start learning to program soon and don't think this needs its own thread.

So I'm working in a program at my uni to prepare hs kids for college. There are 2 big groups of kids (high schoolers and incoming freshmen), and in those groups, there's a split in terms of who takes what classes in the morning. Then there's determining who escorts what kids to where (it gets messy when you have 3 subgroups in one class that need to be taken to different classes).

My boss has a stressful time managing the scheduling every year and I thought it'd be fun to try and find a way to do it with programming. I don't know shit though but I'm taking a class that uses Python next semester, as well as a math class which is kinda like an intro to graph theory. Do you think Python would be enough to make a schedule based on this stuff?
>>
>>8244517

Python could do it, sure.

I've heard Python apps are a bit of pain to deploy on Windows, but it's doable.
>>
just python
Thread posts: 214
Thread images: 14


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.