Programmers of Sup Forums. Do you actually memorize all of the libraries, modules...

Programmers of Sup Forums. Do you actually memorize all of the libraries, modules, headers to use or do you some times find yourself browsing stackoverflow looking for answers?

I've been programming for 5 years now and i still find myself consorting the interwebs for information i should probably already know by now.

Am i just a brainlet or does anyone else do this?

Other urls found in this thread:

jackkinsella.ie/articles/janki-method
twitter.com/SFWRedditVideos

All I know about programming is cout

If you work on a large-scale project using current tools then you're unlikely to remember every detail of those tools, plus sometimes you'll hit bugs or edge cases in the tools you're using where you won't find a solution anywhere in the official documentation

Memorize? Sure if I do it enough times.

It's always handy to a reference page for the library you are using.

It's not about memorization, it's about knowing what exists (and what doesn't), and knowing where/how to get it quickly.

How do companies hire? Do they hire based on knowledge of a certain language or do they care if you have to occasionally look stuff up?

pretty sure the only thing a programmer needs to know for any job is how to go about solving problems the most efficient way, and knowing how to construct algorithms properly

memorizing libraries and whatnot is a plus but doesn't really matter, and learning other languages and frameworks can be done quickly

I recode everything from scratch
#include

class string {

public:
string ();
string (const char *str);
string (const string &other);
~string ();

string &operator = (const string &other);

size_t size () const;
char operator [] (size_t i) const;
char &operator [] (size_t i);

const char *raw () const;

private:
size_t _size;
char *_chars;

};

inline string::string () : _chars (new char[1]) {
_chars[0] = 0;
_size = 0;
}

inline string::string (const char *str) {
for (_size = 0; str[_size] != 0; _size++);
_chars = new char[_size + 1];
for (size_t i (0); i < _size; i++) {
_chars[i] = str[i];
}
_chars[_size] = 0;
}

inline string::string (const string &other) : _size (other._size) {
_chars = new char[_size + 1];
for (size_t i (0); i < _size; i++) {
_chars[i] = other[i];
}
_chars[_size] = 0;
}

inline string::~string () {
delete [] _chars;
}

string &string::operator = (const string &other) {
if (_size != other._size) {
char *new_chars (new char [other._size + 1]);
delete [] _chars;
_chars = new_chars;
}
for (size_t i (0); i < _size; i++) {
_chars[i] = other[i];
}
_chars[_size] = 0;
return (*this);
}

inline size_t string::size () const {
return _size;
}

inline char string::operator [] (size_t i) const {
return _chars[i];
}

inline char &string::operator [] (size_t i) {
return _chars[i];
}

const char *string::raw () const {
return _chars;
}

Memorization is easy with spaced repetition. I am much more productive than my colleagues that constantly check books and websites for shit they should already know.

Start here:
jackkinsella.ie/articles/janki-method

>Do you actually memorize all of the libraries, modules, headers to use
Of course not, that would be retarded. APIs change, even for non-web things and who the fuck knows all of C++ features in his head. Don't worry user.

>I am much more productive than my colleagues that constantly check books and websites for shit they should already know.
No, you're not.
/thread

It's not about memorization, it's about knowing how it works.

Learn C or BTFO.

It would be a waste of time and precious brain resources to remember every detail of every esoteric library, But remembering WHAT it does, and WHERE to find it, is 100% worth remembering.

lol. kys

>/threading your own post
How silly of you, newfag.

Depends, most companies just want good "engineers" and don't care if you don't know their specific stack, meaning what languages and tools they are using. They know if you are already competent in something that you can easily teach yourself and do some pair programming with a senior dev in order to catch up to speed on whatever pile of junky abstractions they use day to day.

For example Google will hire you out of school giving you a lot of white board tests to see how you would optimize something. "Show us how you would implement X function" "Ok can this be optimized more?" "Can we still optimize this? What if instead of X input there was Y input, how would you alter this to optimize for Y? "

You pass all that shit then you spend first few months learning their specific stack like their distributed in house build tools and development practices/style guides. If your job is doing javascript at Google then you will be given a pile of javascript books to read and they expect you to master all that in a few weeks and be ready to have your training wheels taken off so you can work without constant senior dev watching you but any half-decent CS grad can do this.

hit a nerve?

This is something only newfags would state trying to fit in...

>hit a nerve?
Yeah, you hit the nerve that acts up when I read stupid uninformed shit on the internet. Congratulations.

A Pajeet memorizes, a programmer understands.
It's all about abstraction.

I usually just throw stdlib up there to be safe

if I need rand() and time(NULL) to go with it or something, i just google rand() and then copy and paste

dis

>uses libraries

Yes, you are indeed a brainlet.

Please don't call yourself a programmer. You are a "coder" at best.

Coding is like riding a bike.

You don't do every step in your head to balance yourself, through practice and doing it, it becomes natural

just take notes as you learn shit

in most cases you'll remember how it works but won't remember the details, which is where the notes come in

Write important things down if I'm going to reuse it in the project.
After project is done notes go into binder and stay there until I ever need it again for that project.

This looks like a cute read, what is it?

I am the code of my program
.exe is my body and binary is my blood
I have reinvented over a thousand wheels
Unknown to l33tz,
Nor known to pajeets.
Have withstood pain to remake existing code
Yet, that code will never be used by anyone
So as I pray, unlimited code works.

yeah, this... libs constantly improves, people fight, companies split, but if you know what you are looking, boom, you look what is hot, jump into source code, see if everything is ok (if something is small even steal) and you are done

do not do work someone already done for you

I like you :)
made my da...night

thank you, I do it for her (you)

Don't be such an autistic prick

/thread

Yes. Do python 3 (or javascript if you want to be a meme)

good advice, user

Any language worth its salt has a standardized method of documentation and any decent IDE for this language supports reading and displaying this in-line.
The libraries you use often will be memorized, obviously. The ones you've used but not often can check the documentation. The ones you've never used can be Googled.

start messing around with Qt quick,
I don't understand anything, with widgets it was much simpler. I have I can't even do simple signal slot in c++ using qml elements

What languague do i need to learn to get a job?. Im sick of being neet.

Engrish

You can learn the basics in like 1 month.

java, php, html and js would qualify you for most entry jobs