- Remember duck typing, as opposed to strong typing. It means you don’t need to specify type; if it looks like a duck and walks like a duck, it’s probably a duck.
- snake_case. camelCase. PascalCase.
- Node.js is javascript without a browser. It’s a runtime environment. While js runs natively in the browser for client-side scripting, node allows js to run server-side as well.
- Java and C++ are faster than javascript (or nodejs), by about a factor of 2. Python and Ruby are slower, by about a factor of 5-10.
- Finished the Openlearn JS course.
- Move all new programming courses to drive (in separate docs, rather than this blog).
- Compiled some level info. This is all for senior software engineer.
Company
|
Salary/yr
|
Stock/yr
|
Bonus
|
Google
|
177299
|
153754
|
35346
|
Facebook
|
179000
|
159579
|
28974
|
Microsoft
|
155059
|
29311
|
24695
|
Amazon
|
154259
|
150648
|
19227
|
Apple
|
178131
|
98820
|
25721
|
Netflix
|
425000
|
7750
|
0
|
- Finished the Openlearn PHP course. Didn’t really take notes or memorize this, just kinda wanted to get a feel for how things were done a while ago. Modern languages have more comprehensive server-side scripting capability (even the Python I’m also an expert at).
- Updated resume with some of the recent frameworks I’ve been studying.
- Php studying! Added doc to programming notes.
- Cookies are small files that the server gives back to the client. They contain information about the transaction, allowing a “session” to continue with that data (until expiration). They could contain a username or something else that you don’t want to have to provide every single time over and over and over with each subsequent request.
- The browser will send cookies (for that domain) with each request (if they exist), then the server usually checks for them (if they exist) and skips some logic if they do.
- They can apply to a whole domain, or subsets.
- Third-party cookies: when your server applies it to another domain as well (like for advertisements). This is often looked down upon, for obvious reasons.
- They can be encrypted or not, apply to https or http only, and more. They are not safe for secure information.
- They literally take up space on the client’s machine (albeit small).
- I’ve never had to use NumPy before, since all my linear algebra was in school with MATLAB, but it’s a tool for that. Linear algebra, matrices, n dimensional arrays, etc.
- REST APIs are stateless, remember. You should also use nouns instead of verbs for all routes, except the last one can be a verb. Go from collections (plural) to singletons, like domain/users/bmahlstedt/files/resume.pdf.
- PUT creates a new resource, if not already existent. PUT is idempotent. POST sends data. Sometimes that might mean creating a resource. Not necessarily idempotent.