dale.hagglund + article 70
The Usability of Passwords (by @baekdal) #tips
may 2011 by dale.hagglund
Security companies and IT people constantly tells us that we should use complex and difficult passwords. This is bad advice, because you can actually make usable, easy to remember and highly secure passwords. In fact, usable passwords are often far better than complex ones.
So let's dive into the world of passwords, and look at what makes a password secure in practical terms.
password
usability
computer
security
article
phrase
attack
So let's dive into the world of passwords, and look at what makes a password secure in practical terms.
may 2011 by dale.hagglund
Is Parallel Programming Hard, And, If So, What Can You Do About It?
january 2011 by dale.hagglund
"The purpose of this book is to help you under-stand how to program shared-memory parallel ma-chines without risking your sanity. By describingthe algorithms and designs that have worked well inthe past, we hope to help you avoid at least someof the pitfalls that have beset parallel projects."
concurrency
parallel
multicore
multicpu
multithread
multiprocessor
pdf
paul
mckenney
linux
operating
systems
book
article
january 2011 by dale.hagglund
How to Read Mathematics
october 2010 by dale.hagglund
What are the common mistakes people make in trying to read mathematics? How can these mistakes be corrected?
math
mathematics
article
reading
education
learning
teaching
science
read
academic
study
october 2010 by dale.hagglund
The Evolution of the Unix Timesharing System
may 2010 by dale.hagglund
This paper presents a brief history of the early development of the Unix operating system. It concentrates on the evolution of the file system, the process-control mechanism, and the idea of pipelined commands. Some attention is paid to social conditions during the development of the system.
article
dennis
ritchie
bell
labs
laboratories
computer
history
unix
computing
education
evolution
timesharing
linux
programming
may 2010 by dale.hagglund
Why Your Employees Are Losing Motivation - HBS Working Knowledge
march 2010 by dale.hagglund
"Most companies have it all wrong. They don't have to motivate their employees. They have to stop demotivating them. The great majority of employees are quite enthusiastic when they start a new job. But in about 85 percent of companies, our research finds, employees' morale sharply declines after their first six months—and continues to deteriorate for years afterward."
harvard
business
school
review
article
career
culture
employee
leadership
management
motivation
work
hbr
hbs
engagement
march 2010 by dale.hagglund
A successful Git branching model
march 2010 by dale.hagglund
One person's git branching model that they've found useful. It's clearly explained, and whether you agree with it or not, it's worth reading and considering the problems being solved.
git
branch
model
software
development
article
distributed
version
control
system
dvcs
programming
workflow
march 2010 by dale.hagglund
Statistics to English Translation, Part 1: Accuracy Measures
november 2009 by dale.hagglund
Scientists, engineers, and statisticians share similar concerns about evaluating the accuracy of their results, but they don’t always talk about it in the same language. This can lead to misunderstandings when reading across disciplines, and the problem is exacerbated when technical work is communicated to and by the popular media. [...] The first installment discusses some different accuracy measures that are commonly used in various research communities, and how they are related to each other."
article
math
statistics
accuracy
precision
false
positive
negative
error
november 2009 by dale.hagglund
GPSD-NG: A Case Study in Application Protocol Evolution
august 2009 by dale.hagglund
"The GPSD request-response protocol is enterng its third generation of design, and I think the way it has evolved spotlights some interesting design issues and long-term trends in the design of network protocols in general. To anticipate, these trends are: (1) changing tradeoffs of bandwidth economy versus extensibility and explicitness, (2) a shift from lockstep conversational interfaces to event streams, (3) changes in the "sweet spot" of protocol designs due to increasing use of scripting languages, and (4) protocols built on metaprotocols."
eric
raymond
gps
gpsd
protocol
evolution
json
streaming
article
essay
august 2009 by dale.hagglund
Paul Erdos -- A life that added up to something
may 2009 by dale.hagglund
The prolific mathematician Paul Erdos died on 20 September 1996. His Washington Post obituary ends with the sentence "He left no immediate survivors." Charles Krauthammer disputes this dismal summary by pointing out Erdos's vast intellectual legacy, and exploring the unique traits that lead to this legacy. "No survivors, indeed."
paul
erdos
mathematics
writing
obituary
inspiration
biography
math
article
charles
krauthammer
may 2009 by dale.hagglund
Elevating Science, Elevating Democracy - NYTimes.com
january 2009 by dale.hagglund
"Science teaches facts, not values, the story goes. [....] But this is balderdash. Science is not a monument of received Truth but something that people do to look for truth. That endeavor, which has transformed the world in the last few centuries, does indeed teach values. Those values, among others, are honesty, doubt, respect for evidence, openness, accountability and tolerance and indeed hunger for opposing points of view. These are the unabashedly pragmatic working principles that guide the buzzing, testing, poking, probing, argumentative, gossiping, gadgety, joking, dreaming and tendentious cloud of activity [...] that is slowly and thoroughly penetrating every nook and cranny of the world. Nobody appeared in a cloud of smoke and taught scientists these virtues. This behavior simply evolved because it worked."
politics
science
new
york
times
article
education
society
democracy
religion
atheism
morality
january 2009 by dale.hagglund
Why I Copyfight (Cory Doctorow)
november 2008 by dale.hagglund
"Internet transactions are more apt to commit a copyright offense than their offline equivalents. That's because every transaction on the Internet involves copies." Cory Doctorow argues that that the act of copying is fundamental to culture on the Internet, but copyright law and it's fundamental principles date from a (very recent) period when copying was essentially an industrial process and thus outside the realm of popular culture
cory
doctorow
copyright
legal
technology
internet
culture
creative
commons
article
philosophy
november 2008 by dale.hagglund
Programmer Insecurity (Ben Collins-Sussman)
july 2008 by dale.hagglund
Collins-Sussman observes that many programmers will go to great lengths to avoid showing other developers their work-in-progress which works against common best-practices in software development.
programming
psychology
article
collins
sussman
ben
sharing
source
code
programmers
version
control
best
practices
july 2008 by dale.hagglund
Articles by Jack W. Reeves
june 2008 by dale.hagglund
Several interesting articles on C++ by Jack Reeves. All were originally published in either the "C++ Journal" or the "C++ Report".
jack
reeves
article
software
development
c++
programming
language
design
exception
handling
visitor
stl
standard
template
library
june 2008 by dale.hagglund
Dr. Dobb's | Maximize Locality, Minimize Contention | May 23, 2008
june 2008 by dale.hagglund
Unless taken into account, implicit locking by multi-core cache coherence protocols can effectively serialize otherwise concurrent software.
article
c
c++
programming
concurrency
herb
sutter
architecture
locality
contention
cache
coherency
scalability
effective
false
sharing
convoy
june 2008 by dale.hagglund
Dr. Dobb's | Interrupt Politely | April 9, 2008
april 2008 by dale.hagglund
Still more tips on effective concurrency by Herb Sutter: this one focuses on safely cancelling or interrupting threads when the work being performed is no longer needed.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
posix
thread
cancellation
interruption
effective
april 2008 by dale.hagglund
Dr. Dobb's | Super Linearity and the Bigger Machine | March 12, 2008
april 2008 by dale.hagglund
Yet another article by Herb Sutter on the effective use of concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
superlinear
effective
april 2008 by dale.hagglund
Who did Kill the Software Engineer? (Ekinoderm)
march 2008 by dale.hagglund
"It’s like if you walked into a painting class, told everyone that learning to paint was too hard, and then [...] told them that photography was the same thing as painting, only a lot easier to do."
article
career
software
development
computer
science
education
engineering
teaching
technology
march 2008 by dale.hagglund
Computer Science Education: Where Are the Software Engineers of Tomorrow? (STSC CrossTalk)
march 2008 by dale.hagglund
"Computer Science education is neglecting basic skills, in particular in the areas of programming and formal methods. [...] We examine briefly the set of programming skills that should be part of every software professional’s repertoire."
article
career
software
development
computer
science
education
engineering
teaching
technology
march 2008 by dale.hagglund
What Best Practice is Best (CM Crossroads, November 2007)
march 2008 by dale.hagglund
The November 2007 edition of CM Crossroads takes a look at best practices, and how you can decide which best practice is best for you.
configuration
management
cms
crossroads
article
march 2008 by dale.hagglund
Six Principles for Making New Things
february 2008 by dale.hagglund
"I like to find (a) simple solutions (b) to overlooked problems (c) that actually need to be solved, and (d) deliver them as informally as possible, (e) starting with a very crude version 1, then (f) iterating rapidly."
article
software
development
programming
design
creativity
paul
graham
philosophy
innovation
february 2008 by dale.hagglund
Dr. Dobb's | Going Superlinear | January 30, 2008
february 2008 by dale.hagglund
Part 8 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
critical
section
effective
february 2008 by dale.hagglund
Dr. Dobb's | Break Amdahl's Law! | January 17, 2008
february 2008 by dale.hagglund
Part 7 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
amdahl
performance
amdahls
law
effective
critical
locks
section
february 2008 by dale.hagglund
Dr. Dobb's | Use Lock Hierarchies to Avoid Deadlock | December 11, 2007
february 2008 by dale.hagglund
Part 6 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
critical
section
effective
development
software
february 2008 by dale.hagglund
Dr. Dobb's | Avoid Calling Unknown Code While Inside a Critical Section | November 6, 2007
february 2008 by dale.hagglund
Part 5 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
critical
section
effective
february 2008 by dale.hagglund
Dr. Dobb's | Apply Critical Sections Consistently | October 10, 2007
february 2008 by dale.hagglund
Part 4 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
critical
section
effective
february 2008 by dale.hagglund
Dr. Dobb's | Use Critical Sections (Preferably Locks) to Eliminate Races | September 5, 2007
february 2008 by dale.hagglund
Part 3 of an series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
locks
critical
section
effective
february 2008 by dale.hagglund
Dr. Dobb's | How Much Scalability Do You Have or Need? | August 3, 2007
february 2008 by dale.hagglund
Part 2 of a series of articles on effective concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
effective
february 2008 by dale.hagglund
Dr. Dobb's | The Pillars of Concurrency | July 2, 2007
february 2008 by dale.hagglund
Part 1 of a series of articles on the effective use of concurrency.
article
c
c++
programming
concurrency
herb
sutter
architecture
parallel
scalability
threads
effective
february 2008 by dale.hagglund
Memory part 8: Future technologies [LWN.net]
november 2007 by dale.hagglund
The eighth and final part of this series discusses several different upcoming technologies to improve memory performance, including transactional memory, lockless data structures, vector operations, and others.
ulrich
drepper
memory
hardware
architecture
lwn
article
cas
compare
swap
transactional
latency
numa
vector
november 2007 by dale.hagglund
Memory part 7: Memory performance tools [LWN.net]
november 2007 by dale.hagglund
The seventh part of this series discusses tools to help understand the memory performance of a program: oprofile, page faults, cachegrind, massif
ulrich
drepper
memory
hardware
architecture
lwn
article
programming
tools
performance
optimization
cachegrind
valgrind
massif
november 2007 by dale.hagglund
Memory part 6: More things programmers can do [LWN.net]
november 2007 by dale.hagglund
The sixth part in this series discusses more ways a programmer can improve performance through understaning memory use relating to concurrency and numa.
ulrich
drepper
lwn
article
hardware
memory
dram
sram
ddr
ddr2
architecture
performance
optimization
numa
november 2007 by dale.hagglund
On the Tension Between Object-Oriented and Generic Programming in C++
november 2007 by dale.hagglund
Generic programming can conflict with OO design principles. Type erasure can be used to resolve this conflict.
artima
c++
programming
language
stl
object
oriented
generic
type
erasure
article
november 2007 by dale.hagglund
Safe Bitfields in C++ (originally: Safe Labels in C++)
november 2007 by dale.hagglund
This article describes a technique for type-safe bitmasks in C++.
c++
programming
template
bitfield
artima
article
language
november 2007 by dale.hagglund
Memory part 5: What programmers can do [LWN.net]
october 2007 by dale.hagglund
The fifth part in Ulrich Drepper's series _What Every Programmer Should Know About Memory_ discusses what programmers can do in their software to make efficient use of the memory hierarchy discussed in the previous four parts.
ulrich
drepper
hardware
architecture
performance
memory
lwn
article
programming
october 2007 by dale.hagglund
Memory part 4: NUMA support [LWN.net]
october 2007 by dale.hagglund
Part four of _What Every Programmer Should know about Memory_ discusses non-uniform memory architectures (NUMA), the performance implications of NUMA, and how the linux kernel supports it.
ulrich
drepper
processor
architecture
numa
nonuniform
memory
linux
performance
hardware
lwn
article
october 2007 by dale.hagglund
Memory part 3: Virtual Memory [LWN.net]
october 2007 by dale.hagglund
The third part of Ulrich Drepper's series _What Every Programmer should know about Memory_ at LWN.net discusses virtual memory.
ulrich
drepper
hardware
architecture
processor
virtual
memory
tlb
virtualization
linux
kvm
xen
article
october 2007 by dale.hagglund
What every programmer should know about memory, Part 1 [LWN.net]
october 2007 by dale.hagglund
Part one of a series of articles by Ulrich Drepper discusses the low-level characteristics of physical memory.
ulrich
drepper
lwn
article
hardware
dram
sram
ddr
ddr2
memory
architecture
october 2007 by dale.hagglund
What the Bubble Got Right (Paul Graham)
april 2007 by dale.hagglund
Paul Graham's thoughts on the internet bubble of the late 90s, and what its key *right* ideas were.
article
paul
graham
internet
economics
culture
business
finance
history
market
startups
technology
april 2007 by dale.hagglund
Why RAID is (usually) a Terrible Idea
april 2007 by dale.hagglund
An interesting essay by Jon Bach, president of Puget Custom Computers, about why RAID is often a bad idea in a desktop environment
article
storage
backup
raid
sysadmin
hardware
april 2007 by dale.hagglund
Router Man -- Network World
march 2006 by dale.hagglund
The creator of the multiprotocol router reflects on the development of the device that fueled the growth of networking.
network
computer
history
router
william
bill
yeager
inventor
cisco
article
interview
march 2006 by dale.hagglund
related tags
academic ⊕ accuracy ⊕ acm ⊕ agile ⊕ algorithm ⊕ amdahl ⊕ amdahls ⊕ andy ⊕ appleton ⊕ architecture ⊕ article ⊖ artima ⊕ associative ⊕ atheism ⊕ attack ⊕ backup ⊕ bell ⊕ ben ⊕ best ⊕ bill ⊕ biography ⊕ bitfield ⊕ blog ⊕ book ⊕ brad ⊕ branch ⊕ brooks ⊕ business ⊕ c ⊕ c++ ⊕ cache ⊕ cachegrind ⊕ cancellation ⊕ captcha ⊕ career ⊕ cas ⊕ catenator ⊕ change ⊕ charles ⊕ cisco ⊕ cities ⊕ climate ⊕ cms ⊕ code ⊕ coding ⊕ coherency ⊕ collins ⊕ commons ⊕ compare ⊕ computer ⊕ computing ⊕ concurrency ⊕ configuration ⊕ container ⊕ content ⊕ contention ⊕ control ⊕ convoy ⊕ copyright ⊕ cory ⊕ creative ⊕ creativity ⊕ critical ⊕ criticism ⊕ crossroads ⊕ css ⊕ culture ⊕ dave ⊕ ddr ⊕ ddr2 ⊕ democracy ⊕ dennis ⊕ design ⊕ development ⊕ direct ⊕ distributed ⊕ doctorow ⊕ documentation ⊕ dominus ⊕ dram ⊕ drepper ⊕ drm ⊕ dvcs ⊕ economics ⊕ editor ⊕ education ⊕ effective ⊕ email ⊕ employee ⊕ encryption ⊕ engagement ⊕ engine ⊕ engineering ⊕ environment ⊕ erasure ⊕ erdos ⊕ eric ⊕ error ⊕ essay ⊕ estimation ⊕ evolution ⊕ exception ⊕ false ⊕ file ⊕ finance ⊕ fowler ⊕ fred ⊕ generic ⊕ git ⊕ global ⊕ gps ⊕ gpsd ⊕ graham ⊕ graphics ⊕ greylisting ⊕ hal ⊕ handling ⊕ hardware ⊕ harvard ⊕ haskell ⊕ hbr ⊕ hbs ⊕ herb ⊕ history ⊕ honeypot ⊕ hunt ⊕ improvement ⊕ innovation ⊕ inspiration ⊕ integration ⊕ intellectual ⊕ internet ⊕ interruption ⊕ interview ⊕ inventor ⊕ ip ⊕ jack ⊕ jason ⊕ javascript ⊕ john ⊕ json ⊕ krauthammer ⊕ kvm ⊕ laboratories ⊕ labs ⊕ language ⊕ latency ⊕ law ⊕ leadership ⊕ learning ⊕ legal ⊕ library ⊕ linux ⊕ lisp ⊕ locality ⊕ locks ⊕ long ⊕ lwn ⊕ mail ⊕ management ⊕ mark ⊕ market ⊕ martin ⊕ mashey ⊕ massif ⊕ math ⊕ mathematics ⊕ mckenney ⊕ memory ⊕ methodology ⊕ microprocessor ⊕ model ⊕ morality ⊕ motivation ⊕ multicore ⊕ multicpu ⊕ multiprocessor ⊕ multithread ⊕ negative ⊕ network ⊕ new ⊕ nonuniform ⊕ numa ⊕ obituary ⊕ object ⊕ offload ⊕ operating ⊕ opinion ⊕ optimization ⊕ oram ⊕ oreilly ⊕ organization ⊕ oriented ⊕ parallel ⊕ password ⊕ patterns ⊕ paul ⊕ pdf ⊕ people ⊕ performance ⊕ philosophy ⊕ phrase ⊕ pike ⊕ plan9 ⊕ politics ⊕ positive ⊕ posix ⊕ practices ⊕ pragmatic ⊕ precision ⊕ privacy ⊕ process ⊕ processor ⊕ productivity ⊕ programmers ⊕ programming ⊕ project ⊕ property ⊕ protocol ⊕ psychology ⊕ publisher ⊕ queue ⊕ raid ⊕ raymond ⊕ read ⊕ reading ⊕ reeves ⊕ reference ⊕ reliability ⊕ religion ⊕ review ⊕ ritchie ⊕ rob ⊕ router ⊕ scalability ⊕ school ⊕ science ⊕ section ⊕ security ⊕ sharing ⊕ simple ⊕ simplicity ⊕ smp ⊕ society ⊕ software ⊕ source ⊕ spam ⊕ sram ⊕ standard ⊕ startups ⊕ statistics ⊕ steve ⊕ stl ⊕ storage ⊕ streaming ⊕ study ⊕ style ⊕ superlinear ⊕ sussman ⊕ sutter ⊕ swap ⊕ sysadmin ⊕ system ⊕ systems ⊕ tail ⊕ tcp ⊕ teaching ⊕ technology ⊕ template ⊕ testing ⊕ thomas ⊕ thread ⊕ threads ⊕ times ⊕ timesharing ⊕ tlb ⊕ toe ⊕ tools ⊕ transactional ⊕ tutorial ⊕ type ⊕ typography ⊕ ulrich ⊕ unit ⊕ unix ⊕ usability ⊕ valgrind ⊕ varian ⊕ vax ⊕ vector ⊕ version ⊕ virtual ⊕ virtualization ⊕ visitor ⊕ warming ⊕ web ⊕ william ⊕ work ⊕ workflow ⊕ writing ⊕ xen ⊕ yeager ⊕ yegge ⊕ york ⊕Copy this bookmark: