15339
Structuring Applications for Growth
Conclusion

Separate out your domain language in your root package
Isolate your dependencies in subpackages
Provides mocks to isolate your tests
Commands bring together dependencies
golang  packaging  packages  dependencies  cyclical 
12 hours ago
dougblack/sleepy: rest for go
Sleepy is a micro-framework for building RESTful APIs.
gh  rest  golang 
3 days ago
sidaf/homebrew-pentest: Homebrew Tap - Pen Test Tools
Homebrew Tap - Pen Test Tools. Contribute to sidaf/homebrew-pentest development by creating an account on GitHub.
pentest  gh  security  dns  crawler 
4 days ago
tr1s/tris-webpack-boilerplate: A webpack boilerplate for static websites that has all the necessary modern tools and optimizations built-in.
A webpack boilerplate for static websites that has all the necessary modern tools and optimizations built-in. - tr1s/tris-webpack-boilerplate
webpack  boilerplate 
21 days ago
go-chi/chi: lightweight, idiomatic and composable router for building Go HTTP services
chi is a lightweight, idiomatic and composable router for building Go HTTP services. It's especially good at helping you write large REST API services that are kept maintainable as your project grows and changes. chi is built on the new context package introduced in Go 1.7 to handle signaling, cancelation and request-scoped values across a handler chain.
golang  rest  web-frameworks 
21 days ago
Centering Vertically and Horizontally Using Flexbox | kirupa.com
#outer {
width: 200px;
height: 200px;
background-color: #333333;
display: flex;
align-items: center;
}
flex  flexbox  centering  alignment 
21 days ago
Pointers to other tools? Alternatives to MOUNT? · Issue #199 · grammarly/rocker
We use MOUNT feature to pass ssh-authentication-agent, like:

MOUNT {{ .Env.SSH_AUTH_SOCK }}:/ssh-agent
ENV SSH_AUTH_SOCK=/ssh-agent
docker  ssh  mount  jenkins 
25 days ago
troxler/awesome-css-frameworks: List of awesome CSS frameworks
Frameworks that are smaller than ~5KB.

Pure - Set of small, responsive CSS modules that you can use in every web project.
Demo, Docs, Repo | #CSS

Milligram - Minimalist CSS framework.
Docs, Repo | #Sass

Picnic CSS - Lightweight and beautiful library.
Demo, Docs, Repo | #SCSS
css  frameworks  awesome  bootstrap  alternatives 
28 days ago
pure-css/pure: A set of small, responsive CSS modules that you can use in every web project.
Pure is meant to be a starting point for every website or web app. We take care of all the CSS work that every site needs, without making it look cookie-cutter:

A responsive grid that can be customized to your needs.

A solid base built on Normalize.css to fix cross-browser compatibility issues.

Consistently styled buttons that work with <a> and <button> elements.

Styles for vertical and horizontal menus, including support for dropdown menus.

Useful form align...
css  bootstrap  alternative 
28 days ago
The intuition behind Shannon’s Entropy – Aerin Kim 🙏 – Medium
For anyone who wants to be fluent in Machine Learning, understanding Shannon’s entropy is crucial. Shannon’s Entropy leads to a function which is the bread and butter of an ML practitioner — the cross entropy that is heavily used as a loss function in classification and also the KL divergence which is widely used in variational inference.
shannon-entropy  entropy  ml  probability 
4 weeks ago
Shannon Entropy, Information Gain, and Picking Balls from Buckets
- Entropy is in some way, the opposite of knowledge.
- In order to build the entropy formula, we want the opposite, some measure that gives us a low number for Bucket 1, a medium number for Bucket 2, and a high number for Bucket 3. No problem, this is where logarithms will come to save our life.
- The following is a very simple trick, yet used very widely, particularly in Machine Learning. See, products are never very good. Here we have a product of 4 numbers, which is not bad, but imagine if we...
entropy  machine-learning  ml  probability  statistics 
4 weeks ago
PostgreSQL: Documentation: 11: 38.11. User-defined Aggregates
Aggregate functions in PostgreSQL are defined in terms of state values and state transition functions. That is, an aggregate operates using a state value that is updated as each successive input row is processed.
aggregate  postgres  function  average  details 
4 weeks ago
Implementing State Machines in PostgreSQL - Felix Geisendörfer
- This is something really critical for any kind of sane analytics. I've been places where people thought they knew what the state machine looked like, yet there were all kinds of transitions logged in the database that people swore were "impossible".

- In the past I've used a table to define allowed state transitions; simply what NEW.state is allowed to be based on OLD.state. That also gives you a place to name each state transition (ie: event). The only trick is making sure you have at least ...
state-machine  graph  postgres  fsm 
4 weeks ago
Scaling Postgres with Read Replicas & Using WAL to Counter Stale Reads — Brandur Leach
Routing reads based on replica WAL position

By routing read operations only to replicas that are caught up enough to run them accurately, we can eliminate stale reads. This necessitates an easy way of measuring how far behind a replica is, and the WAL’s LSN is perfect for this use.

When mutating a resource in the system we’ll store the last committed LSN for the entity making the request. Then, when we subsequently want to fulfill a read operation for that same entity, we’ll check ...
postgres  replication  wal  scalability  architecture 
4 weeks ago
Implementing Stripe-like Idempotency Keys in Postgres — Brandur Leach
- When rendering the form initially, we can add a <input type="hidden"> to it that contains an idempotency key. This value will stay the same across multiple submissions, and the server can use it to dedup the request.

- For endpoints that get away with only mutating local state in an ACID database, it’s possible to get a robust and simple idempotency implementation by mapping requests to transactions

- Implementations that need to make synchronous changes in foreign state (i.e. outside of a l...
supervisor  reconciliation  idempotency  strip  job-drain  consistency  architecture  details 
4 weeks ago
Using Atomic Transactions to Power an Idempotent API — Brandur Leach
- Invoking our transaction with DB.transaction(isolation: :serializable) starts it in SERIALIZABLE;
an isolation level so powerful that its guarantees might seem practically magical.
It emulates serial transaction execution as if each outstanding transaction had been
executed one after the other, rather than concurrently.

- I’ve taken the opportunity to demonstrate the power of a serializable transaction,
but in real life you’d want to put in a UNIQUE constraint on email
even if you intended to...
isolation  serializable  postgresql  transactions  jobs  messaging  queues  sidekiq  architecture  details 
4 weeks ago
Torn Meniscus: Self-Treatment Exercises | PhysioPrescription
- this test is something special. It easily shows whether you are at risk of lower limb injury. It is very reliable and accurate, even when done by novices, AND it is one of the most common tests used in Physiotherapy. The standing lunge test – Also know as the knee-to-wall test – Is demonstrated in the image below:

- this study found that only ankle dorsiflexion range of movement, measured using the weight-bearing lunge test (what I am showing you today), was significantly associated with su...
ankle  dorsiflexion  skiing  physiotherapy 
4 weeks ago
goadesign/goa: Design-based APIs and microservices in Go
goa takes a different approach to building micro-services. Instead of focusing solely on helping with implementation, goa makes it possible to describe the design of your API using a simple Go DSL. goa then uses that description to generate specialized service helper code, documentation, API clients, tests and even custom artifacts via plugins.
codege  golang  api  microservice  microservices 
4 weeks ago
Swagger Codegen | API Development Tools | Swagger
Swagger Codegen can simplify your build process by generating server stubs and client SDKs for any API, defined with the OpenAPI (formerly known as Swagger) specification, so your team can focus better on your API’s implementation and adoption.
codegen  swagger  generation  code  automation  api  rest-api 
4 weeks ago
Towards A Safer Footgun | codahale.com
Modern symmetric encryption is built around Authenticated Encryption with Associated Data (AEAD) constructions: combinations of ciphers and message authentication codes which provide strong guarantees of both confidentiality and integrity. These constructions avoid the “doom principle” which made so many older cryptosystems vulnerable to online attacks, but many of the standard AEAD constructions have problems of their own.
What’s an AEAD?

An AEAD is essentially a pair of functions:...
encryption  cryptography  security 
5 weeks ago
security - How can bcrypt have built-in salts? - Stack Overflow
Stored in the database, a bcrypt "hash" might look something like this:

$2a$10$vI8aWBnW3fID.ZQ4/zo1G.q1lRps.9cGLcZEiGDMVr5yUP1KUOYTa

This is actually three fields, delimited by "$":

2a identifies the bcrypt algorithm version that was used.
10 is the cost factor; 210 iterations of the key derivation function are used (which is not enough, by the way. I'd recommend a cost of 12 or more.)
vI8aWBnW3fID.ZQ4/zo1G.q1lRps.9cGLcZEiGDMVr5yUP1KUOYTa is the salt and the cipher...
bcrypt  authentication  gotcha  algorithms 
5 weeks ago
gin osx firewall issue · Issue #12 · codegangsta/gin
Same happened to me, because if your HOST environment variable is empty, the server is trying to bind to :3000, which needs permission from the firewall. The solution is to invoke gin like this: HOST="localhost" gin.
golang  gin  firewall  osx 
5 weeks ago
Building a Go Web App - Part 2 - Gregory Trubetskoy
This is a continuation of part 1.
(There is also part 3
and part 4). So our app is going to have two major parts to it: client and
server. (What year …
golang  go  web-development 
5 weeks ago
Ask HN: What is your Golang web-dev tech stack? | Hacker News
I've started using Echo[1] and it seems to provide most of what I'm looking for (routing, context, sessions, CSRF protection, form/json binding, etc). For templating, I'm using QuickTemplate[2] which creates statically generated templates, but Pongo2[3] and Jet[4] also look reasonable. sqlx[5], gorm[6], and sqlboiler[7] all seem reasonable for database access, depending on what your style is (sqlx being oriented toward manual statements, gorm being reflection-based orm-ish, and sqlb...
golang  go  web-development 
5 weeks ago
go-echo-sqlboiler/Makefile at master · ken-aio/go-echo-sqlboiler
Golang + echo + sqlboiler sample. Contribute to ken-aio/go-echo-sqlboiler development by creating an account on GitHub.
golang  makefile 
5 weeks ago
volatiletech/sqlboiler: Generate a Go ORM tailored to your database schema.
SQLBoiler is a tool to generate a Go ORM tailored to your database schema.

It is a "database-first" ORM as opposed to "code-first" (like gorm/gorp). That means you must first create your database schema. Please use something like goose, sql-migrate or some other migration tool to manage this part of the database's life-cycle.
golang  orm  database 
5 weeks ago
Echo - High performance, minimalist Go web framework
Automatic TLS

Automatically install TLS certificates from Let's Encrypt.
golang  web-development  letsencrypt  auto-ssl 
5 weeks ago
ohler55/agoo: A High Performance HTTP Server for Ruby
A simple hello world Ruby handler at over 100,000 requests per second on a desktop computer. That places Agoo at about 85 times faster than Sinatra and 1000 times faster than Rails. In both cases the latency was two orders of magnitude lower or more. Checkout the benchmarks. Note that the benchmarks had to use a C program called Perfer to hit the Agoo limits. Ruby benchmarks driver could not push Agoo hard enough.

Agoo supports the Ruby rack API which allows for the use of rack comp...
ruby  performance  benchmark 
5 weeks ago
the-benchmarker/web-frameworks: Which is the fastest web framework?
Which is the fastest web framework? Contribute to the-benchmarker/web-frameworks development by creating an account on GitHub.
benchmark  web-development  frameworks  microservices  microframeworks  golang  ruby  python  benchmarks 
5 weeks ago
jackc/pgx: PostgreSQL driver and toolkit for Go
pgx is a pure Go driver and toolkit for PostgreSQL. pgx is different from other drivers such as pq because, while it can operate as a database/sql compatible driver, pgx is also usable directly. It offers a native interface similar to database/sql that offers better performance and more features.
golang  database  go  postgresql 
5 weeks ago
upper/db: Productive data access layer for Go.
The upper.io/db.v3 package for Go is a productive data access layer for Go that provides a common interface to work with different data sources such as PostgreSQL, MySQL, SQLite, MSSQL, QL and MongoDB.
golang  database  go  postgresql 
5 weeks ago
Building the Topic Exchange tutorial with STOMP – Google Grupper
SEND
destination:/exchange/topic_logs/kern.critical
...

and for subscribing:

SUBSCRIBE
destination:/exchange/topic_logs/#

or
destination:/exchange/topic_logs/kern.*

or
destination:/exchange/topic_logs/*.critical

or (multiple)
destination:/exchange/topic_logs/kern.* *.critical
stomp  rabbimq  routing-key  multiple  api  gotcha 
5 weeks ago
Consistent Hash Rings Explained Simply
- you may want to take a URL and get back the server the website is hosted on.

- The problem of mimicking a hash table when the number of locations are constantly changing was exactly why consistent hashing was invented.

- For 2,000 keys spread across 100 locations, you now need to move only 20 keys to a new location if 1 location with only 20 keys goes down.

- This is the main benefit of consistent hashing: you now no longer need to move so many things just because one location has disappea...
algorithms  algorithm  distributed  consistent-hash  hash  cs 
5 weeks ago
'this' in TypeScript · Microsoft/TypeScript Wiki
Red Flags for this

The biggest red flag you can keep in mind is the use of a class method without immediately invoking it. Any time you see a class method being referenced without being invoked as part of that same expression, this might be incorrect.

Examples:

var x = new MyObject();
x.printThing(); // SAFE, method is invoked where it is referenced

var y = x.printThing; // DANGER, invoking 'y()' may not have correct 'this'

window.addEventListener('click', x.printThing, 10); // DANGER, meth...
typescript  javascript  this  idiots 
5 weeks ago
JavaScript Garden
JavaScript Garden is a growing collection of documentation about the most quirky parts of the JavaScript programming language. It gives advice to avoid common mistakes and subtle bugs, as well as performance issues and bad practices, that non-expert JavaScript programmers may encounter on their endeavours into the depths of the language.
javascript  gotchas  idiots  programming  js 
5 weeks ago
Online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript
Online regex tester, debugger with highlighting for PHP, PCRE, Python, Golang and JavaScript.
regex  testing  regexp 
5 weeks ago
asdf-vm/asdf: Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
extendable version manager

Supported languages include Ruby, Node.js, Elixir and more. Supporting a new language is as simple as this plugin API.
ruby  elixir  python  nodejs  version  rvm  rbenv 
5 weeks ago
Debugging Node.js with Chrome DevTools – Medium
Support for Node.js debuggability landed in Node.js in 2016. Here’s how to get up and running. (Post updated Jan 2018) Next, you used to open the big chrome-devtools:// URL it spits out, but don’t…
node.js  nodejs 
5 weeks ago
[rabbitmq-discuss] Headers Exchange
> Seems to be from the RabbitMQ
> AMQP compatibility chart but it's hard to find any concrete
> information on using it. What is the advantage if any over topic?
Short and fairly useless answer: Headers exchanges route based on the headers of the message. Topic exchanges route based on the routing key usd to publish the mesage. Longer answer: - Headers exchanges can express an "any field matches" or an "all fields match" condition. Topic exchanges can only express an "all words matc...
rabbitmq  headers-exchange  topic-exchange  messaging  architecture 
6 weeks ago
Vector Clocks Explained
Vector Clocks by Example

We’ve all had this problem:

Alice, Ben, Cathy, and Dave are planning to meet next week for
dinner. The planning starts with Alice suggesting they meet on
Wednesday. Later, Dave discuss alternatives with Cathy, and they
decide on Thursday instead. Dave also exchanges email with Ben, and
they decide on Tuesday. When Alice pings everyone again to find out
whether they still agree with her Wednesday suggestion, she gets
mixed message...
algorithms  distributed  distributed-systems  clock  vector  time 
6 weeks ago
GoogleChromeLabs/pptraas.com: Puppeteer as a service
Puppeteer as a service. Contribute to GoogleChromeLabs/pptraas.com development by creating an account on GitHub.
puppeteer  saas  crawler  automation  service 
6 weeks ago
ChromeDevTools/awesome-chrome-devtools: Awesome tooling and resources in the Chrome DevTools & DevTools Protocol ecosystem
Awesome tooling and resources in the Chrome DevTools & DevTools Protocol ecosystem - ChromeDevTools/awesome-chrome-devtools
chrome  devtools  debugging  web-development 
6 weeks ago
Now – Global Serverless Deployments
Now makes serverless application deployment easy.
Don’t spend time configuring the cloud. Just push your code.
serverless  deployment  golang 
6 weeks ago
Rancher 2 Hetzner Cloud UI Driver | ui-driver-hetzner
Rancher 2 UI driver for the Hetzner Cloud. For the Rancher 1 version check out the readme from the v1.6 branch which you can find here.
hetzner 
6 weeks ago
RethinkDB: the open-source database for the realtime web
RethinkDB is probably the most interesting new ‘on-disk + complex queries’ database out there. For sure made by people who get it.
Salvatore Sanfillipo, creator of Redis
database  json  nosql  db  streaming 
6 weeks ago
Open Source Release: postgresql-hll –
Dynamic COUNT(DISTINCT ...) queries that would have taken minutes or hours to compute from a fact table or would have been impossible in traditional cube aggregates return in milliseconds. Combine that speed with PostgreSQL’s window and aggregate functions and you have the ability to present interactive, rich distinct-value reporting over huge data sets. I’ll point you to the README and our blog posts on HyperLogLog for more technical details on storage, accuracy, and in-depth use cases.

I beli...
hll  postgresql  postgres  count  distinct  aggregate 
6 weeks ago
Active recall - Wikipedia
Active recall is a principle of efficient learning, which claims the need to actively stimulate memory during the learning process. It contrasts with passive review, in which the learning material is processed passively (e.g. by reading, watching, etc.). For example, reading a text about George Washington, with no further action, is a passive review. Answering the question "Who was the first US President?", is active recall.
learning  school  kids  studying  memory  best  details 
7 weeks ago
Testing effect - Wikipedia
The testing effect is the finding that long-term memory is often increased when some of the learning period is devoted to retrieving the to-be-remembered information.[1] The effect is also sometimes referred to as retrieval practice, practice testing, or test-enhanced learning.[2][3][4] The testing effect on memory should be distinguished from more general practice effects, defined in the APA Dictionary of Psychology (2007) as "any change or improvement that results from practice or ...
learning  school  kids  studying  memory  best  details 
7 weeks ago
Distribunomicon | Learn You Some Erlang for Great Good!
The basics of distributed computing, including the 8 fallacies (or assumptions) of distribution, the CAP theorem, and a hands on guide to getting things distributed with Erlang.

- 1. The CAP Theorem basically specifies that in any distributed system, you can only have two of CAP: either CA, CP, or AP. There is no possible way to have all of them.
- 2. Of the three possibilities, one that we can usually dismiss is the idea of CA (Consistency + Availability). The reason f...
cap  theorem  availability  partition-tolerance  consistency  erlang 
7 weeks ago
Message order and delivery guarantees in Elixir/Erlang
Same applies to the inter-node communication. Order in which messages sent between two processes is preserved, but message flow may be interrupted at any given moment and skip any number of messages in between.
two-generals  erlang  at-least-once  messaging  message-queues  architecture  gotcha 
7 weeks ago
Tesla Adds Larry Ellison and Kathleen Wilson-Thompson as Board Directors | Hacker News
Bruce Scott, the co-founder of Oracle says, “I remember Larry very distinctly telling me one time: Bruce, we can’t be successful unless we lie to customers.” And adds: “All the things that you would read in books of somebody being a leader, he wasn’t. But he was tenacious; he would never give up on anything.” [0]

Elon stretches the truth constantly. Should be a good fit.

[0]: https://techcrunch.com/2010/12/01/larry-ellison-hearsay-we-c...
larry-ellison  tenacious  business 
7 weeks ago
BEM — Block Element Modifier
The naming convention follows this pattern:

.block {}
.block__element {}
.block--modifier {}

.block represents the higher level of an abstraction or component.
.block__element represents a descendent of .block that helps form .block as a whole.
.block--modifier represents a different state or version of .block.

The reason for double rather than single hyphens and underscores is so that your block itself can be hyphen delimited, for example:

.site-search {} /* Block */
.site-searc...
css  design  bem  naming  framework  frontend 
7 weeks ago
Katacoda - Interactive Learning Platform for Software Engineers
Learn new technologies using real environments
right in your browser
Interactive Learning and Training Platform for Software Engineers
Helping Developers Learn and Companies Increase Adoption
learning  education  devops  kubernetes 
8 weeks ago
Ask HN: What do you use for authentication and authorization? | Hacker News



arkadiyt 10 hours ago [-]

Hard to say without more concrete details, but if I had to reply in broad strokes:

- For web, user/pass login exchanged for plain session cookies. Should be marked httpOnly/Secure, and bonus points for SameSite and __Host prefix [1]

- For web, deploy a preloaded Strict-Transport-Security header [2]

- For api clients, use a bearer token. Enforce TLS (either don't listen on port 80, or if someone makes a request over port 80 revoke that token).

- If ...
authentication  api  security  cors  web-development  https 
8 weeks ago
Famed impulse control 'marshmallow test' fails in new research | Education | The Guardian
Now, though, there is relief for the parents of the many children who would gobble down a marshmallow before the lab door was closed, after academics from New York University and the University of California-Irvine tried and largely failed to replicate the earlier research, in a paper published earlier this week.

The new research by Tyler Watts, Greg Duncan and Hoanan Quen, published in Psychological Science, found that there were still benefits for the children who were able to hold out for a ...
marshmallow  test  impulse  gratification 
8 weeks ago
Nassim Nicholas Taleb på Twitter: "3- Look at the hordes with "high IQ" (from measurement) who are failures in real world rather than the ~50% correlation between IQ and success in 1) salaried employment, 2) jobs that select for edjukashion. Yuuge surviv
2- It takes a certain type of person to waste intelligent concentration on classroom/academic problems. These are lifeless bureaucrats who can muster sterile motivation. Some people can only focus on problems that are REAL, not fictional textbook ones.

3- Look at the hordes with "high IQ" (from measurement) who are failures in real world rather than the ~50% correlation between IQ and success in 1) salaried employment, 2) jobs that select for edjukashion. Yuuge survivorship bias. 37 out of 38 P...
intelligence  iq  nassim-taleb 
8 weeks ago
Nassim Nicholas Taleb på Twitter: ""IQ" THREAD "IQ" measures an inferior form of intelligence, stripped of 2nd order effects, meant to select paper shufflers, obedient IYIs. 1- When someone asks you a question in REAL LIFE, you focus first on "WHY is he
"IQ" THREAD "IQ" measures an inferior form of intelligence, stripped of 2nd order effects, meant to select paper shufflers, obedient IYIs. 1- When someone asks you a question in REAL LIFE, you focus first on "WHY is he asking me that?", which slows down. (Fat Tony vs Dr John)
iq  intelligence 
8 weeks ago
Scanning books at 250 pages a minute (2008) | Hacker News

I am not the domain expert on this project, but here at the Internet Archive we ended up developing our own system (not dissimilar from this one, albeit with significantly less automation) at a fairly low cost. Some links for details:

https://archive.org/scanning

https://archive.org/details/tabletopscribesystem (links to additional detail pages there)

https://motherboard.vice.com/en_us/article/jp5kjy/saving-hum... (a few years old)

We've found that high-cost implementations are ...
scanning  scan  hn 
8 weeks ago
​GitOps - Operations by Pull Request
What exactly is GitOps? By using Git as our source of truth, we can operate almost everything. For example, version control, history, peer review, and rollback happen through Git without needing to poke around with tools like kubectl.

Our provisioning of AWS resources and deployment of k8s is declarative
Our entire system state is under version control and described in a single Git repository
Operational changes are made by pull request (plus build & release pipelin...
gitops  git  kubernetes  deployment  devops 
9 weeks ago
Evaluating High Availability Solutions for TimescaleDB + PostgreSQL
How we evaluated several third-party tools and ultimately selected Patroni as our preferred method.

While there are many third party solutions available, ultimately we went with Patroni because it combined robust and reliable failover with a simple architecture and easy-to-use interface.
postgres  postgresql  high-availability  architecture 
9 weeks ago
Polymail — Email Collaboration for Teams
Polymail is a new kind of email platform that helps teams collaborate, be more productive, and work better, together.
email  productivity 
9 weeks ago
Berkson's paradox - Wikipedia
For example, if the risk factor is diabetes and the disease is cholecystitis, a hospital patient without diabetes is more likely to have cholecystitis than a member of the general population, since the patient must have had some non-diabetes (possibly cholecystitis-causing) reason to enter the hospital in the first place. That result will be obtained regardless of whether there is any association between diabetes and cholecystitis in the general population.

An example presented by Jordan Ellenb...
statistics  math  mathematics  paradox  probability 
10 weeks ago
« earlier      
2009 2010 2011 6-star 7-star 8-star 9-star aapl advertising advice ai aig algorithm algorithms analytics api apple architecture bac banks bdd best best-practices book brk bruce-berkowitz bubble business career china chk cocoa color commodities comparison contrarian contrarian-investing conversion corruption csco css data database dell deployment design details development documentary domaining e-commerce economics economy email entrepreneur entrepreneurship european-banks european-investing example facebook ffh filetype:pdf finance finland fonts food framework francis-chou free funny germany git github go golang gold google gotcha government guru-investor hacking health history hn hosting housing housing-bubble howto hpq html html5 http idiots inflation inspiration interview investing ios-development iphone iphone-development japan java javascript jquery kids language learning life linux luk mac mac-development machine-learning management maps market-timing marketing math media media:document mobile-development money movie movies msft mysql news nginx nlp node.js objective-c oil open-source optimization ostk osx performance philosophy photoshop plugin pmts politics postgres prediction presentation productivity programming psychology python rails recipe reference ruby running saas sales scaling sd search security seo seth-klarman shld shopping sinatra ski-technique social-media software startup startups statistics strategy sweden sysadmin testing tips todo tool tools toread tosite1 totry toview travel tutorial twitter typography ui usability ux valuation value-investing value_investing valueline video viewed warren-buffett web-design web-development webdesign work writing

Copy this bookmark:



description:


tags: