__strisk | 8 years ago | on: The Benjamin Franklin method for learning more from programming books
__strisk's comments
__strisk | 8 years ago | on: Effective Engineer – Notes
__strisk | 8 years ago | on: How I learned to program
__strisk | 8 years ago | on: A Letter from the Publisher of Nautilus
__strisk | 8 years ago | on: Ask HN: How to secure your code or software?
https://www.edx.org/course/web-security-fundamentals-kuleuve...
It pretty much goes over most of the OWASP top 10.
__strisk | 8 years ago | on: Ask HN: What notes app do you use?
__strisk | 8 years ago | on: Airbnb dominated by professional landlords
I actually find that to be the worst aspect of AirBnB, if I go to a hotel and I do not like my room I can switch it. If I use AirBnB and the place sucks, well, I'm stuck. Unless I want to go through a lengthy customer service battle.
Listings managed by professionals are pleasant on the other hand, I honestly do not want to check-in putting up a front after lining my "host"s pockets. I pay for a service and receive service. Let's not pretend they're doing this for any other reason. AirBnB damn isn't Couch Surfing.
__strisk | 8 years ago | on: Ask HN: Which programming languages do not have corporate branding?
__strisk | 8 years ago | on: Ask HN: What's your process for learning?
1. try to find a overarching synopsis of the main topic or goal. This can be done by looking at a summary article or by skimming the summaries of a textbook or by checking an expanded table of contents
2. Extract major topics and write these on a spreadsheet/graphical program/(giant) index card/ paper. If you used index cards or a graphical program or index cards try to discern dependencies between these topics by using the gui tools or simply laying out index cards on the ground.
3. Find resources that explain the topics. The resources do not need to be from the same resource. One source can explain topics a,b,c well but not d. You can use another resource for topic d.
4. map projects to topics: extremely important. After finding out the topics and associated resources, you should be able to come up with applications of the topics. These could be as simple as solving problems from a textbook or they can be grand like building a motorcycle (actually, that's too grand). Keep the primary goal to be learning the topics you set out to learn or completing your goal.
5. execute the projects
6. check off topics as you encounter them
7. reflect on the results of the project or application
8. if you encounter difficulties find more resources and drill down on topics you found interesting or challenging.
Not perfect, but its working well for me. You can start from practical applications or theoretical concepts. Books are great because they contain a structured approach to a topic. ALWAYS MAKE SURE THE BOOK HAS PROBLEMS THAT HAVE (some)ANSWERS!! You should be able to do quick knowledge checks.
topic based learning is more difficult and I feel like it's like making your own sandwich vs buying a prepackaged one.
__strisk | 8 years ago | on: Ask HN: Are there any courses/course materials that teach oop concepts well?
the main topics that one should learn are: * some tidbit of history on why oop * fundamental object oriented concepts: inheritance, encapsulation, and interfaces * network of objects and their restricted interactions
* modeling a domain using objects * documenting objects and their interactions * how are objects represented in memory * SOLID principles * solutions (design patterns) to common problems * concurrent design and thread safety in oop designs * tools in oop design (CRC cards, UML, etc.) * actually making projects and laying out the code in an implementation language.
Here are some books I seem to like so far.
books:
Holger Gast - How to Use Objects: Code and Concepts (https://www.amazon.com/gp/product/0321995546) This book seems to be what I was looking for. It has an integrated practical approach using the Eclipse source code as examples for various object oriented concepts. I have cross-checked various sources and it seems like this book covers all relevant concepts including SOLID principles.
Bertrand Meyer - Object-Oriented Software Construction https://www.amazon.com/Object-Oriented-Software-Construction... This seems to be a great reference. However, I haven't looked too thoroughly into it. I found a nice quote though.
"Today, no one will call security if one of the cocktail guests
declares object-oriented tastes. This is the buzzword effect, which
has been dubbed mOOzak: the omnipresence, in the computer press, of
O-O this and O-O that, causing a general dilution of the concepts.
The words flow so continuously from the loudspeakers — object,
class, polymorphism... — as to seem familiar, but are the concepts
widely understood? Often not." (29.1)
only found one course that I would probably refer to...
courses:
https://web.stanford.edu/class/archive/cs/cs108/cs108.1092
This has great course notes and projects to implement using object oriented programming.__strisk | 8 years ago | on: Ask HN: Are there any courses/course materials that teach oop concepts well?
__strisk | 9 years ago | on: Starting an Internet Service Provider
Here's the kicker. Comcast was willing to drop a line to the house for around $15,000. No thanks. With two m5 ubiquiti radios and 100ft of ethernet cable, I solved the problem spending less than $300. It would have been nice to have a direct connection, but I'd rather save some money.
The radio's have been up for 5+ years now. I had a problem with one of the POE adaptors once, but other than that I think these devices are cost-effective and robust. I believe these radios can help bring about internet connectivity for a large portion of the unserved population. Easy to setup. Cheap. Robust.
__strisk | 9 years ago | on: Ask HN: What are some books where the reader learns by building one project?
It goes over building a link aggregating service using Django.
However, I also remember it being free. Doesn't seem to be an option with the most recent release.
__strisk | 9 years ago | on: Software Engineering at Google
The article posted by kyrra, mentions this.
Given the value gained from the existing tools Google has built and the many advantages of the monolithic codebase structure, it is clear that moving to more and smaller repositories would not make sense for Google's main repository. The alternative of moving to Git or any other DVCS that would require repository splitting is not compelling for Google.
It seems like they have just too much invested in this "shove it in the same repo" style. Or is this the more appropriate way to do things in a large organization?
__strisk | 9 years ago | on: What a good commit message looks like (2011)
For example:
"I fixed the button issue on the homepage. Still, need to center the title."
would be better written as:
"fixes button issue on homepage"
Always think about what that commit does to the codebase. This is obviously for single-line commits. I suppose it would be okay to "dear diary" in the commit body. You can provide rationality or context in the commit body.
__strisk | 9 years ago | on: How to Become a Data Scientist – On Your Own (2015)