47 karma · joined January 6, 2017
https://www.edx.org/course/web-security-fundamentals-kuleuve...
It pretty much goes over most of the OWASP top 10.
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.
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.
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.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.
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.
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?
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.