ποΈΒ§ Archive
1222 pages
- π Structural editors must handle invalid/broken state
- π Pretend the software is magic
- π DLT trust is dependent on majority following the rules
- π Use Distributed State Machines to handle centralized requests in CRDT
- π Linguistic relativity applies to programming and query languages as well
- π Linguistic relativity
- π Β§ Brainstorming
- π Production blocking in brainstorming
- π Sharing ideas on stickies helps to avoid production blocking
- π For best brainstorming, cycle through individual idea generation and group idea sharing
- π Notes on: βGraphs, Metagraphs, RAM, CPUβ by Linas VepΕ‘tas
- π Group brainstorming feels more productive because it is cognitively easier
- π Brainstorming individually is more efficient that brainstorming in a group
- π To avoid groupthink, start individually and then merge
- π Notes on: Group versus individual performance on tasks requiring ideational proficiency (brainstorming): a review
- π Notes on: βDecisiveβ by Chip & Dan Heath
- π Vanishing Options Test
- π Execs who weigh more options actually make decisions faster
- π All-or-nothing thinking
- π You are susceptible to confirmation bias even if you seek out more information
- π Product experiments should not be scientifically rigorous
- π Shadow is not necessarily bad aspects of ourselves
- π Notes on: βContinuous Discovery Habitsβ by Teresa Torres
- π In product discovery interview, ask customers to share stories
- π Reification fallacy
- π Golang cheatsheet
- π Thoughts subvocalization is similar to subvocalization in rapid reading
- π We verbalize/visualize thoughts to activate our brain βfrom outsideβ
- π Conducting an interview, youβre also representing your company
- π LLM chatbots could allow communicating with Zettelkasten
- π Unison might be a good language for LLM-driven programming
- π LLMs work better with static/typed programming languages
- π LLMs work better with explicit/verbose code
- π LLMs can expedite software development by offloading simple tasks
- π With advance of computing, programming becomes more and more complicated
- π Code as Craft is a marketing tool to attract talent
- π Programming used to be perceived as a second-class intellectual activity
- π The Humble Programmer
- π The Death of Code as Craft
- π The Slight Edge
- π Adult Children of Emotionally Immature Parents: How to Heal from Distant, Rejecting, or Self-Involved Parents
- π How to track UTM parameters in Google Ads
- π Work expands to fill available team
- π War metaphor in business
- π Notes on: Fried, J., & Heinemeier Hansson, D. (2018): It does't have to be crazy at work
- π Language runtime
- π Stress. Chapter 43 - Burnout
- π Humans experience loneliness because being alone used to be dangerous
- π Laziness might be a symptom of burnout
- π Excitement is the first stage of burnout
- π Technical design helps to save time on reworks
- π Useful RDF vocabularies/ontologies
- π User-programmable language parser
- π Diamond-square terrain generation
- π Β§ Noise functions
- π Perlin algorithm generates square noise
- π Fractal noise
- π Use gradient noise functions for map generation
- π A*
- π ECS makes it easy to store/load game state
- π ECS architecture allows great flexibility in defining entity types
- π ECS may provide better performance
- π (ECS) Cross-system communication via event entities
- π Entity Component System (ECS)
- π Goal-Oriented Action Planning
- π For engineering department, the goal of planning is to solve project management triangle
- π Formal planning is usually done when budget is involved
- π Estimates in project planning phase tend to become deadlines
- π Project management triangle
- π Β§ Project planning phase
- π Feedback (loop) is a requirement for improvement
- π Β§ Feedback loop
- π Log working time to improve your estimates
- π Tackle risky tasks as early as possible
- π How to involve team into design?
- π How to: disable <a> link
- π Migrating from Next.js to Astro
- π Lowering the friction may exponentially influence the usage
- π Bit.dev decouples components and packages to lower the barrier to create a new component
- π Β§ B-tree
- π Push smart components up as much as possible
- π Smart/dumb components (Container/View)
- π Injecting container implementation per container
- π Injecting smart components / containers
- π The Mirroring Hypothesis: Theory, Evidence and Exceptions
- π Software design is better done by the implementation team
- π As an architect, allow the team to get the experience and learn
- π Software architects should continue coding to get the feedback
- π Defaults matter
- π Process boundaries are harder to violate than module boundaries
- π Microservices architecture is a way to de-couple organizations (allowing them to grow)
- π Domain-driven design
- π CSRF (Cross-site request forgery)
- π Terraform
- π Data outlives code
- π Retrospective activities
- π Designing Data-Intensive Applications
- π Conflict-Free Partially Replicated Data Types
- π The log-structured merge-tree (lsm-tree)
- π CmRDT naturally allow inspecting the history
- π How-to: disable .DS_Store on macOS
- π Conflict-Free Replicated Data Types
- π Lightning Memory-Mapped Database (LMDB)
- π Key-value stores can be used as database storage engines
- π RDF vs. LPG
- π Labeled Property Graph (LPG)
- π Resource Description Framework (RDF)
- π Designers of systems tend to design ways for themselves to bypass the system
- π Database as an OS component
- π Β§ Personal computing
- π You shouldnβt be thinking that youβre using different computers
- π Lexorank
- π Every extensible system feels messy and spaghetti-like
- π Drive: the surprising truth about what motivates us
- π Being liberal in accepted input hinders backward compatibility
- π Being strict in accepted input allows finding errors
- π Postelβs Law
- π Co-effect system reifies dependencies
- π Effect systems reify effects
- π Knowledge illusion : the myth of individual thought and the power of collective wisdom
- π Radical honesty: how to transform your life by telling the truth
- π¨βπ¬ Alpha
- π¨βπ¬ Alpha #8: Let bindings and recovery from HIR refactoring
- π Β§ Intermediate Representation (IR)
- π vnmakarov/mir
- π Compiler optimization are still worth to pursue
- π CPS is better suited for later compilation stages
- π The Case for 'Developer Experience'
- π Applications as sandboxes are the result of Conwayβs law
- π LLVM IR
- π¨βπ¬ Alpha #7: HIR, High-level Intermediate Representation
- π Software design for flexibility: how to avoid programming yourself into a corner
- π Principles: life and work
- π Swift Intermediate Language (SIL)
- π 2015 LLVM Developersβ Meeting: Joseph Groff & Chris Lattner βSwift's High-Level IR: A Case Study..."
- π¨βπ¬ Alpha #6: Compiling with Continuations, continued
- π Humans are fearful and anxious because we used to be in the middle of the food chain
- π Humans are not designed for comfort
- π Science does not study you (unless youβre a lab rat)
- π Co-effects
- π Compiling with continuations, or without? whatever.
- π Compiling with continuations resources
- π Compiling without continuations
- π Compiling with continuations, continued
- π The essence of compiling with continuations
- π Rust: on-stack dynamic dispatch
- π¨βπ¬ Alpha #5: Compiling with Continuations
- π A major version bump does not imply incompatibility
- π Β§ Package management and versioning
- π Version numbers version package interface as a whole
- π Packages only use a subset of other packagesβ interfaces
- π Libraries should communicate dependenciesβ versions constraints
- π Dependenciesβ version constraints require additional maintenance work
- π Version number communicates version of the interface and of its implementation
- π Implicit interface
- π Interface is second-class for package managers
- π Packages could declare their dependenciesβ interface instead of version constraint
- π Package managers are dependency injection mechanisms
- π It is preferable to have a single version of each library
- π Libraries should not pin specific versions of dependencies
- π¨βπ¬ Alpha #4: garbage collection and golden testing
- π¨βπ¬ Alpha #3: dynamically-sized types and almost-finished garbage collection
- π (LLVM) How to: debug shadow stack gc lowering
- π Zig functions are colorless
- π Zig
- π Conservative GC can relocate objects if their pointer does not occur on stack
- π Servoβs GC types are only safe because GC is conservative
- π How to write a Rust lint?
- π Servo uses Rust lints to ensure all GC pointers are rooted
- π Resource management
- π GC only helps with memory but not other resources
- π If objects are immutable, older memory can never point to the newly-allocated memory
- π A generational GC can skip scanning an old generation if it is known to not contain references to newer generations
- π VM page protection tricks can be used in normal apps too
- π mprotect to implement a write barrier (GC)
- π Dependency injection
- π Run GC as often as possible to test it and catch bugs
- π Using mprotect none to catch GC bugs
- π Domain-driven design: tackling complexity in the heart of software
- π Rust, variable-length arrays in structs
- π Β§ Garbage collection
- π Shadow stack
- π Software is not additive
- π In Rust, mut/const references are more about exclusive/shared access
- π¨βπ¬ Alpha #2: multi-methods, type hierarchy, and dot desugaring
- π Uniform access principle
- π Dot-call desugaring to function call
- π Destructive/non-destructive move
- π Atomic ordering
- π¨βπ¬ Alpha #1: a newborn programming language for extensible systems
- π On writing well: the classic guide to writing nonfiction
- π Image-based programming systems
- π Pratt parser
- π SMART goals
- π Proebstingβs law
- π You cannot correct your course if youβre standing still
- π Racket: Parameters
- π Reader/State vs dynamic scoping
- π Karpman Drama Triangle
- π Write useful books: a modern approach to designing and refining recommendable nonfiction
- π In a dynamically-typed language, every function is parametrically polymorphic
- π Aliasing only matters if a reference is aliased with another mutable reference
- π Β§ Aliasing
- π If aliasing is possible, a function call invalidates value analysis / cached value
- π Enums are not extensible
- π Turing tarpit
- π Symmetric vs asymmetric multiple dispatch
- π Ad hoc hierarchy system
- π Multiple dispatch implementation
- π Β§ Programming language implementation
- π Constant-time βis-aβ type check with single inheritance
- π Reading code is not a goal
- π Algorithm reification
- π Example-driven development
- π Design issue vs tool issue
- π Function color
- π Mindful Self-Discipline
- π Nominal subtyping establishes a partial order
- π Glamorous Toolkit Live #5: Moldable searching with Spotter & queries
- π Glamorous Toolkit Live #4: Moldable analysis of Java systems
- π Glamorous Toolkit Live #3: Example-driven development
- π The almanack of Naval Ravikant
- π Sapiens: a brief history of humankind
- π How-to: Org-mode timers
- π Glamorous Toolkit Live #6: Lepiter
- π Erlang
- π Erlang: release handling
- π Software updates as part of the programming system
- π Guile
- π Is effect system only relevant to typed languages?
- π Β§ Effect system
- π Condition system + debugger as a simple prompt UI
- π Glamorous toolkit
- π Glamorous Toolkit Live #2: Inspector views & working with a REST API
- π Glamorous Toolkit Live #1: Moldable development & a tour
- π Common Lisp: packages and symbols
- π Β§ Programmable syntax
- π Common Lisp: readtable
- π Common Lisp: classes
- π Common Lisp: multiple values
- π Common Lisp: special operators
- π Common Lisp: condition system
- π Common Lisp: Format
- π Β§ Tacit knowledge
- π Chicken sexer as an example of tacit knowledge
- π Common Lisp: Multiple Dispatch
- π Β§ Multiple dispatch
- π Scope vs. Extent
- π In Common Lisp, global variables use star *naming* *convention* because of dynamic scoping
- π In Common Lisp, all global variables are automatically βspecialβ (use dynamic scoping)
- π Global variables to pass rarely-used dependencies
- π Dynamic scoping is a better model for global variables
- π Common Lisp is a practical lisp
- π Lisp exposes two levels of syntax (s-expressions and lisp forms)
- π Zettelkasten is bad for pre-packaged learning
- π Zettelkasten is best for research
- π Kind vs. Wicked learning environment
- π How Falling Behind Can Get You Ahead
- π Extensible system makes it easy to apply the changes
- π The logical thinking process: a systems approach to complex problem solving
- π On Managing Yourself
- π Transsexualism [ Part I ]
- π How to Ask Better Questions | Mike Vaughan | TEDxMileHigh - YouTube
- π Use hand-drawn diagrams to convey a feeling of casual and temporary
- π Zettelkasten as a tool for building mental models
- π The number of books completed is a vanity metric
- π Treat books as throwaway blog posts
- π You donβt have to finish books
- π Open source is stiffling progress
- π Open source inhibits progress for development tools
- π Open source slows progress in software technology by demonetizing it
- π UX cannot be studied out of history context
- π UX conditioning
- π Digital zettelkasten: principles, methods, & examples
- π Authentication and identity management should be part of the platform
- π OpenID Connect can be used as a universal authentication system
- π GPG-based authentication
- π Julia is successful because numerical computing is on a rise (data science, machine learning, etc)
- π Julia
- π Open-source work can be funded by consulting
- π Julia: The Goldilocks language β Increment: Programming Languages
- π Company of one: why staying small is the next big thing for business
- π Getting Things Done
- π Category Theory: Function object
- π Compose key cheatsheet
- π Structure notes as trains of thoughts
- π Β§ Decisions
- π Separate actionable/non-actionable items
- π Monopolies are monocultures
- π The principle of GTD is getting things off of your mind
- π If you donβt have a practice of clearing inbox completely, it will grow indefinitely
- π The Ultimate Guide for Becoming an Idea Machine - James Altucher
- π Long-tenured workers acquire company-specific knowledge
- π Long-tenured workers should be paid above the market
- π Why don't tech companies pay their engineers to stay?
- π Architectβs role is bridging engineering and management
- π Architecture as financial options
- π Zettelkasten as a tool for breaking down and rebuilding structure
- π Asking for objections does not produce buy-in
- π Ask for objections, not agreement
- π Migrating to Org-roam v2
- π Holacracy: the revolutionary management system that abolishes hierarchy
- π Get Things Done with Emacs
- π Cooperative Software Development
- π Β§ Making products
- π Minimum Loveable Product
- π Do not use friends for testing new products
- π On Coding, Ego and Attention
- π How-to: record screen
- π Holacracy
- π Governance vs. operations
- π Clarifying roles
- π How I note
- π By empowering you put people in a victim role
- π SoΜnke Ahrens | zettelkasten | Π±Π°Π·Π° Π·Π½Π°Π½ΠΈΠΉ | ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ
- π Female pursuit of computer science with Jennifer Wang
- π Spiral Dynamics: Beige and Purple are a speculation
- π Spiral Dynamicsβ explanation of history is a speculation
- π A human's guide to words
- π Rephrasing can lead to misinterpretation
- π Money as quality change
- π Poverty tax
- π Novices typically find critical and specific feedback less motivating
- π Ask for advice, not feedback
- π After interview, take time to think through before giving feedback
- π Beck and Cowan criticize Integral Theory because of over-attachment to Spiral Dynamics
- π Spiral Dynamics interpretation differences
- π Tierism
- π Ken Wilber
- π Wilber misinterprets Spiral Dynamics
- π Spiral Dynamics dilution
- π βIntegralβ re-coloring
- π (SD) Structure vs. Content
- π Faq integral and integrative
- π Spiral Dynamics interpretations
- π Levels of existence: an open system theory of values
- π Yellow vMEME acts in self-interest by impacting those things that threaten its quality of being
- π The ultimate purpose of any business is making money
- π Money is not the end goal of business
- π The growing popularity of Teal Organizations is an indicator of Beta condition
- π Teal Organizations is a Stretch-UP for many
- π Meditation and Yoga re-coloring
- π Wiki re-coloring
- π Green: there should be no private knowledge
- π Maxim Tsepkov
- π Agile re-coloring
- π (SD) Beta condition
- π Stretch-UP
- π Spiral Dynamics: re-coloring
- π Spiral Dynamics and Zettelkasten re-coloring
- π Personal knowledge: towards a post-critical philosophy
- π Knowledge management in Green
- π Zettelkasten as interpreted by Orange
- π Spiral dynamics: mastering values, leadership and change
- π Dark night of the soul
- π Spiritual Materialism
- π Cutting Through Spiritual Materialism
- π Two roads to success
- π Category Theory: Coproduct
- π Cocartesian monoidal category
- π Cartesian monoidal category
- π Cat (category)
- π Monoidal category
- π Category Theory for Programmers
- π Nine levels of increasing embrace in ego development: a full-spectrum theory of vertical growth and meaning making
- π Contravariant Functor
- π Β§ Complexity
- π Is there an upper limit on complexity humans can manage?
- π Low-level programming will become less and less popular
- π Time-adjusted complexity justifies pushing the complexity downward
- π Time-adjusted complexity definition
- π Programming systems become more and more complex
- π What are important questions in Software Development?
- π Β§ Waking Up
- π Wilberβs axes of development
- π Achieving success by modifying oneβs wants
- π Success is achieving what one wants
- π Iβm merging my websites
- π Hunter-gatherers spent 3β5 hours working
- π Work can be enjoyable
- π Flow: The Psychology of Optimal Experience
- π Molecular biology of the cell
- π A theory of human motivation
- π The religion of tomorrow: a vision for the future of the great traditions-more inclusive, more comprehensive, more complete
- π Reinventing organizations: a guide to creating organizations inspired by the next stage of human consciousness
- π Maslowβs hierarchy is not a pyramid
- π Domination hierarchies produce parentβchild relationships
- π Green organizations
- π In Teal Organization, not all workers must be stage Yellow
- π Necessary conditions for Teal Organization
- π The culture code: the secrets of highly successful groups
- π Both Theory X and Theory Y are useful and can be mixed
- π Theory X and Theory Y are self-fulfilling prophecies
- π Theory Y addresses higher-level needs (Maslowβs hierarchy)
- π Theory X and Theory Y
- π Koi
- π How-to: speed-up youtube video
- π So good they canβt ignore you: why skills trump passion in the quest for work you love
- π Shadow dance: liberating the power and creativity of your dark side
- π The architect elevator - visiting the upper floors
- π Why Books Don't Work
- π An everyone culture: becoming a deliberately developmental organization
- π The 4 disciplines of execution in a nutshell
- π Bifunctor
- π Endofunctor
- π How can we develop transformative tools for thought?
- π Deep Work
- π Interview and Q&A with SoΜnke Ahrens on How to Take Smart Notes
- π Deep Work philosophies
- π Any-value fallacy
- π Self-learning is about taking responsibility
- π Test your language implementation on hashing algorithm
- π Delivering happiness: a path to profits, passion, and purpose
- π Mental peak at 25 is a misconception
- π Manβs mental complexity never peaks
- π Teal organizations ideas
- π Reinventing organizations: an illustrated invitation to join the conversation on next-stage organizations
- π The start of the book gives the most insights
- π Data/interpretation duality
- π Β§ Teal Organizations
- π Orange thinks of organizations as of machines
- π Learning without pressure creates broader βcognitive mapsβ
- π Man peaks mentally at 35 and then maintains the level
- π The Startup Way: How Entrepreneurial Management Transforms Culture and Drives Growth
- π Psycho-cybernetics: updated and expanded
- π The power of full engagement: managing energy, not time, is the key to high performance and personal renewal
- π Thick face, black heart: the path to thriving, winning & succeeding
- π Red is the first stage when man manifests his interests
- π Yellow is the new Beige, Turquoise is the new Purple
- π Value systems have healthy and unhealthy manifestations
- π There are no good or bad Value Systems
- π Each Value System evolves as a response to Life Conditions
- π A man is a mix of Value Systems
- π Spiral Dynamics is about Value Systems
- π Periods of non-productivity as a part of overall productivity
- π βNegativitiesβ might be your power
- π Success has no rules
- π Nobody knows what they are doing
- π Telling people what they should be focuses then on how they are not
- π Everything is Fucked
- π A brief history of spiral dynamics
- π Spiral Dynamics defines hierarchy
- π Avoid βmentorβ word
- π Β§ Thick Face, Black Heart
- π Thick Face, Black Heart progression
- π Turquoise
- π Green
- π Blue
- π Red
- π Purple
- π Beige
- π Express-self
- π Thick Face, Black Heart is neither good nor evil
- π Thick Face, Black Heart
- π Emotional Machines
- π Yellow
- π Zettelkasten is a manifestation of Yellow
- π Orange
- π The Non-Designerβs Design Book
- π Programming Language Pragmatics
- π The Dreyfus model of clinical problem-solving skills acquisition: a critical perspective
- π Thinking in Systems: A Primer
- π Just Enough Software Architecture
- π Why People Fail To Recognize Their Own Incompetence
- π A Five-Stage Model of the Mental Activities Involved in Directed Skill Acquisition
- π About face: the essentials of interaction design
- π How to Take Smart Notes
- π Intuitive solutions have to be rationalized
- π Forward/reverse problems
- π Dreyfus model does not explain reverse problems solving
- π Dreyfus model does not take into account explicit knowledge
- π List of Reification examples
- π Only non-interactive CLIs are composable
- π ARM uses the least-significant bit to switch between ARM/Thumb
- π Extensible interfaces might hinder UX
- π Mentorship: select mentee carefully
- π Β§ Mentoring
- π Mentorship: ideal experience gap is 5β10 years
- π Organizational context as architectural constraint
- π Β§ Architect role
- π Β§ Conceptual integrity
- π How interface designers scale?
- π Architect as guard of conceptual integrity
- π Architect only suggests
- π Β§ Architect vs. implementer
- π Β§ Open source
- π Reusable off-the-shelf software components attack the essence of software development
- π Brooksβs law
- π Essential vs. accidental in software development
- π 100 Things Every Designer Needs to Know about People
- π 12 essential skills for software architects
- π Practical Typography
- π The mythical man-month: essays on software engineering
- π How To See Yourself As You Really Are
- π List of Programming Languages
- π Code review: err on the side of approving
- π Code review: be explicit when comment is minor
- π React.useCallback breaks encapsulation
- π Do not overuse React.useCallback
- π Externalize knowledge to learn
- π Writing to learn
- π The Five-Stage Model of Adult Skill Acquisition
- π Dreyfus model
- π Lightweight RFC-like process
- π Involve the team into design
- π By documenting a design, the designer exposes himself to the criticism
- π A philosophy of software design
- π Delta State Replicated Data Types
- π Γ Architect should keep the distance
- π Architects live in a glass house
- π Practical Creativity
- π ClojureScript Unraveled (2nd edition)
- π Mash-up! how to use your multiple skills to give you an edge, make money and be happier
- π How-to: read entropy available
- π Talent is Overrated
- π How-to: get slack api token
- π Not every system needs an architecture
- π How to apply architectural knowledge to programming language design?
- π Avoid arrowheads on connectors
- π Β§ Software Modeling
- π Put legend on diagrams
- π The science of enlightenment: how meditation works
- π Polyphasic sleep: facts and myths
- π The Book: On the Taboo Against Knowing Who You Are
- π Essays of Schopenhauer
- π The War of Art
- π Turning Pro
- π In Defense of Food
- π The Design of Everyday Things
- π Breakthrough Rapid Reading
- π Make Time
- π Writing to be understood: what works and why
- π The things you can see only when you slow down: how to be calm in a busy world
- π The Sleep Revolution
- π NLP: The Essential Guide to Neuro-Linguistic Programming
- π The big leap: conquer your hidden fear and take life to the next level
- π Managing Oneself
- π The Hero with a Thousand Faces
- π How-to: use wpa_supplicant to connect to Wi-Fi
- π Design Principles Behind Smalltalk
- π Tone down architecture
- π Architecture is a buzzword
- π Make decisions at the Last Responsible Moment
- π Present ADRs as simply βdecisionsβ
- π Architecture as a shared understanding
- π Maintain a decision todo list
- π Architecture as whatβs most important
- π Architecturally-significant requirements
- π Architecture Decision Record
- π Architecture as a set of important decisions
- π Be wary of wasting time documenting design decisions
- π Β§ Index
- π Forth cheatsheet
- π How Do Committees Invent?
- π Architecture is a special case of Software Design
- π What Architects do?
- π How to convert SVG to PNG on server side?
- π Product tools
- π NAT Traversal
- π Trickle ICE
- π Deep/shallow modules
- π Criteria change in software development
- π Β§ Software Design
- π Architecture as product design/specification
- π What is Architecture?
- π Software Architecture in Practice
- π How to: transfer file using telnet (and netcat)
- π As a software architect, describe the theory you built
- π Programming as Theory Building
- π Meta: Status Report #1
- π The burnout solution: 12 weeks to a calmer you
- π Cβs explicit layout prohibits some optimizations
- π Modern processors are fast PDP-11 emulators
- π The main complication for CPU cache is shared and mutable state
- π C language is not particularly good for high-performance computing
- π Loop unswitching must pay attention to possibly zero-counted loops (in presence of uninitialized values)
- π Loop unswitching
- π C is not a low-level language
- π Fortranβs specialized for loop can generate faster code
- π Value representation
- π 64-bit machines donβt use full 64-bit address space
- π NaN-boxing
- π Tagged pointer
- π In Rust, mutable references never alias
- π C is no longer a low-level language
- π Fortran used to be faster than C because of aliasing
- π Double-barrelled continuations
- π Encapsulation is a subset of Modularity
- π Is there a functional programming language with implementation inheritance?
- π Interface Inheritance vs Implementation Inheritance
- π Some programming languages become popular slow & steady
- π Some programming languages become popular because they offer a quick upgrade
- π Some programming languages are popular because of the killer app/framework
- π Some programming languages are popular because of platform exclusivity
- π Java is popular because of marketing
- π Why programming languages become popular?
- π Habit is unconscious behavior
- π You can change habit routine as long as you keep cue and reward the same
- π Habit loop
- π We are accountable for our habits
- π CPS is single assignment (SSA)
- π CPS is a subset of lambda-calculus
- π The power of now: a guide to spiritual enlightenment
- π The power of habit: why we do what we do in life and business
- π Compiling with continuations
- π Compiling with continuations
- π Continuation is goto
- π Β§ Continuation
- π Continuation is reification of program control state
- π In Rust, all types are movable
- π Runtime is what makes languages unique
- π Languages become popular when they bring innovative runtime
- π Rust lifetimes are not about object creation/destruction but about how long the object is available at the given location
- π If youβre bored of a book, it might be because itβs not delivering
- π The Book of Not Knowing
- π Algebraic effects for functional programming
- π Handlers in action
- π The reading is less effective if youβre not interested
- π If you take long breaks between reads, it might be harder to return
- π You donβt have to overtime to get promoted
- π Put your oxygen mask on first
- π It does not matter whether you finish books as long as you read regularly
- π Great is just good, repeatable
- π Itβs easier to have instrumental motivation if you have an important goal outside of work
- π Architecture/management duality
- π Make sure the organization is compatible with the product architecture
- π Conwayβs law
- π Burned-out Professional can end up with Lumpen motivation type
- π Instrumental/Professional mix is the best for burnout prevention
- π Gerchikovβs motivation model
- π Delegating tasks down the hierarchy amplifies urgency
- π Build systems a la carte
- π βGoto considered harmfulβ is about unconstrained goto
- π Metaphors we use influence what solutions we see
- π Burnout is the opposite of stress
- π Β§ Burnout
- π Programming system
- π Data becomes code as soon as someone writes an interpreter
- π SRTP exposes audio-level
- π WebRTC security
- π WebRTC Data Channel
- π SCTP
- π WebRTC is not an innovation
- π WebRTC: switching codecs or resolution triggers a new exchange of ICE candidates
- π SDP BUNDLE
- π TURN
- π STUN
- π ICE
- π SRTP
- π Signaling
- π RTSP
- π SDP Offer/Answer model
- π SDP
- π WebRTC
- π RTCP
- π RTP
- π Streaming
- π Gio event handling
- π Reification of drawing operations allows implementing Flutter layout model in a single pass
- π Reification
- π Flutter layout model
- π Gio
- π Spaced repetition for writing inbox
- π XY problem is not technology-specific
- π Ask why
- π XY problem
- π Inheritance starts with composition
- π Immediate mode GUI
- π Spaced repetition for reading inbox
- π List of Projectional Editors
- π Salsa
- π Subtext 1
- π Functor
- π Discrete category
- π Makepad
- π Adjacent Possible
- π Subtext
- π ROWE opens up possibility of unethical behavior
- π Results only work environment
- π Initial/Terminal object
- π Category Theory is a theory of functors
- π Category theory is all about morphisms, not objects
- π Thin Category
- π Monoid
- π Hom-set
- π Order
- π Category Theory: Epimorphism
- π Category Theory: Monomorphism
- π Category Theory: Isomorphism
- π Set theory: functions
- π Rete Algorithm
- π Self and self: whys and wherefores
- π Crafting Interpreters
- π Do be do be do
- π Values > Principles > Practices
- π Category
- π Math notation
- π Category Theory: Product
- π Β§ Category Theory
- π Dynamic scoping works badly with laziness
- π Self (language)
- π Artist vs. Entertainer
- π Spaced repetition provides exponential returns on investment
- π Datascript as a lingua franca for domain modeling
- π Spaced repetition for efficient learning
- π Reify data model
- π Turning the IDE inside out with datalog
- π Datomic syntax
- π Datalog can be used to express algorithm on code
- π NΓM problem
- π Transducers
- π Clojure: dynamic scoping
- π BLE
- π GATT
- π Open-Closed Principle
- π DRY is not about code but functionality
- π DRY
- π Success to the successful
- π Seeking the wrong goal
- π Code highlighting can carry more information
- π Code as Database
- π Extensibility requires introspection
- π Waterbed Theory
- π Black (reflective language)
- π How spaced repetition algorithms can help note-taking?
- π How to use Spaced Repetition and Zettelkasten together?
- π Spaced repetition can be used beyond memorizing facts
- π Augmenting long-term memory
- π How-to: close locked telnet session
- π How-to: close locked ssh session
- π Binary relation properties
- π Β§ Math
- π With spaced repetition, beware of adding false facts
- π Do a second pass to take notes
- π Take non-verbatim notes
- π Can tablets help with note taking?
- π 52/17 is an optimal interval for Pomodoro
- π Kriya Yoga
- π How recursion is handled in content-addressable systems?
- π Dynamic scoping
- π Multi-level functionality scenarios
- π Design model
- π Restrictions enhance creativity
- π Constraints provide consistency
- π Constraints as guide rails
- π Quality attributes are emergent properties
- π How-to: inspect LLVM IR
- π Use simple notations
- π For domain modeling, beware of adding technical details
- π Domain model
- π How-to: Flash full Android
- π How-to: build native app for Android
- π Levels of using models
- π When modeling, pick important details and ignore the rest
- π Models can be used to amplify reasoning
- π Question first and model second
- π Sign-offs encourage Big Design Up Front
- π Quantity-to-quality
- π The slip box needs a number of years in order to reach critical mass
- π Zettelkasten lives its own life
- π Hitchhiker tree
- π Fractal tree index
- π Β§ Data structures
- π Software development quotes
- π Cargo-cult programming
- π How-to: run docker as my user
- π Survival
- π Larger creatures need stronger bones (than would be proportionally needed)
- π Water negates gravity to some extent, and helps beat square-cube law
- π Sketching User Experiences: The Workbook
- π Tragedy of the commons
- π Ideal extensible system requires adding new code only
- π Extensibility is about the cost of adding new extensions
- π Extensibility negatively affects software security
- π Β§ Mental models
- π How-to: Unfreeze Emacs
- π My notes are stock
- π What makes Smalltalk extensible?
- π Seeking exponential growth reduces the stability of the system
- π How economy causes its own crash?
- π Economy might be unstable but it is resilient
- π 4 Years with Literate Configuration
- π on: Guile β The Failed Universal Scripting Language
- π Bounded rationality
- π Systems Thinking: Do not overinclude
- π Systemsβ boundaries are imaginary
- π Resilient system does not have to be static
- π Β§ Systems Thinking
- π Guile is a language designed for extensible systems
- π Emacs as a user interface library
- π CLIs expose interaction as first-class citizen
- π 2/COSS process might be good for extensible systems
- π Extensible systems threaten ads
- π ErgoDox
- π Open source makes systems more extensible
- π What makes Emacs extensible?
- π Issues with non-extensible systems
- π Β§ Extensible system
- π Kriya secrets revealed: lessons and techniques workbook
- π 8 Limbs of Yoga
- π Pretty-printing can be used to layout widgets in Projectional Editors
- π Kosmos
- π Touch-typing practice
- π Ergodox-EZ
- π Keyboards
- π Mindustry
- π Hero Factory
- π Archero
- π Cell to Singularity
- π Rogue Adventure
- π The problem is that the definition of deliberate practice by ericsson and colleagues changes depending on the argument being made.
- π How Important is Deliberate Practice? Reply to Ericsson (2016)
- π Deliberate Practice and Performance in Music, Games, Sports, Education, and Professions: A Meta-Analysis
- π Summing up hours of any type of practice versus identifying optimal practice activities
- π Minimal Dungeon RPG
- π Β§ Gamedev
- π Game subsystems are games
- π The role of teacher in Deliberate Practice
- π Authors are biased to defend their theories
- π Deliberate Practice might be not the sole factor predicting expert performance
- π Deliberate Practice: MacnamaraβEricsson argument
- π Publication bias
- π 10,000 Hours Rule does not exist
- π Signs of Deliberate Practice
- π Deliberate Practice might not be directly related to the target activity
- π Is βExperience Trapβ applicable to programming?
- π Experience Trap
- π Β§ Deliberate Practice
- π For Flow, you must be able to recognize feedback
- π Flow can be addictive
- π Flow needs a sense of control
- π Protobuf: no inheritance support
- π Content-addressable storage makes it easy to cache intermediate results
- π Presumptive architecture
- π Architecture risks can be added as spikes to backlog
- π Risk-biases in software development processes
- π Protobuf: avoid int32/int64
- π Protobuf: negative values for int32 and int64 are always 10-bytes long
- π Protobuf: calculating field size
- π Protobuf: in proto3, it is impossible to distinguish absent fields from default values
- π Protobuf: wrapping fields into embedded messages might decrease their size
- π Protobuf: for oneof fields, it is impossible to know if field is missing or unrecognized
- π Protobuf: updating message types
- π Protobuf: avoid using required fields
- π Protobuf: field numbers 1β15 take 1 byte to encode
- π Protobuf: proto2 vs proto3
- π Β§ Protobuf
- π How-to: build/activate home-manager config without home-manager
- π Perkeep
- π Archiving
- π Game Programming Patterns
- π Why interleaving enhances inductive learning: the roles of discrimination and retrieval
- π Folgezettel (notes sequence)
- π How computers can enhance Zettelkasten method?
- π Taking non-verbatim notes improves conceptual understanding
- π Do laptop users tend to write verbatim notes in non-lecture setting?
- π Laptop users tend to write verbatim notes (in lecture setting)
- π Have multiple projects to work on
- π Autonomous choice enhances motivation/energy
- π The pen is mightier than the keyboard: advantages of longhand over laptop note taking
- π Comparing yourself to others
- π Humans are too complex to compare
- π Self-worth does not exist
- π Table of Content in notebooks
- π Leuchtturm1917 notebooks
- π Highfive Notebook tagging system
- π The first C++ compiler was not a preprocessor
- π Separate storage and query layers
- π Good sleep, good learning, good life
- π Growing a Language
- π Factor: an extensible interactive language
- π Reactive with clojurescript recipes: functional programming for the web
- π The Pragmatic Programmer: From Journeyman to Master
- π The value of values
- π How To Stop Comparing Yourself To Others
- π Test-driven development for embedded c
- π Rise of Worse is Better
- π Never Eat Alone: And Other Secrets to Success, One Relationship at a Time
- π How to Reach Out to a Writer, Thinker, or Person You Respect
- π How to use Dreyfus model in teaching
- π Experts judge others by their own rules
- π Use tags sparingly in Zettelkasten
- π Β§ Teaching
- π Γ Dreyfus model (1980)
- π Niklas Luhmann
- π Zettelkasten is subject to cumulative effect
- π Pre-packaged courses hinder understanding
- π Too much order can impede learning
- π Labeling
- π Understanding is the only reliable way to learn
- π Memorization techniques bundle things together to make them easier to remember
- π Ovsiankina effect
- π Zeigarnik effect
- π Zettelkasten process
- π Zettelkasten is GTD of note-taking
- π Can I build a unified flow for tasks and note-taking?
- π How does Zettelkasten deal with Collectorβs Fallacy?
- π Can I apply PARA to Zettelkasten?
- π Treat random notes as a separate βprojectβ
- π Separate literature notes from permanent notes
- π Separate permanent notes and project notes
- π Zettelkasten is about developing ideas, not collecting them
- π Β§ Zettelkasten
- π Zettelkasten makes things easier to remember by connecting ideas
- π I do not think of code as text
- π I remember code quickly
- π Mental models make things easier to remember
- π Just-world hypothesis
- π Nix flakes
- π Meditation is part of all religions
- π All religions have the same ground
- π Color meaning
- π Color
- π 60-30-10 rule
- π #how-to
- π Entrainment
- π Controlled sleep deprivation with phase advance
- π RethinkDB
- π Christianity
- π Samadhi
- π Chronotherapy
- π Nix
- π How-to: nix-shell with direnv
- π Kerning
- π tehwalris/forest
- π Font design
- π Open source business models
- π Sentry
- π Elasticsearch
- π AWS can launch your Software as a Service before you do
- π Β§ Business
- π Commercial Open-Source Software
- π Human Supremacy
- π Speciesism
- π How-to: borg backup
- π Micro-SaaS Meat Grinder
- π AWS
- π AWS services
- π Nassim Nicholas Taleb
- π Antifragile
- π Thich Quang Duc self-immolation
- π Β§ Software Architecture
- π Galois/Counter Mode (GCM) and GMAC
- π Chosen-plaintext attack
- π Counter (CTR)
- π Output Feedback (OFB)
- π Cipher Feedback (CFB)
- π Propagating Cipher Block Chaining (PCBC)
- π Padding (Encryption)
- π Initialization Vector
- π Cipher Block Chaining (CBC)
- π Electronic Codebook (ECB)
- π Replay attack
- π TLS CBC IV attack
- π Block cipher mode of operation
- π Β§ Chemistry
- π Alkane
- π Hedonic Treadmill
- π Blue Dot Effect
- π Martin Fowler
- π Design Stamina Hypothesis
- π Length extension attack
- π HMAC
- π Sugars (including ribose), amino acids, and nucleobases were detected in asteroids
- π Ribosome
- π Enzyme
- π Ribozyme
- π Uracil
- π Thymine
- π Guanine
- π Cytosine
- π Adenine
- π Nucleobase
- π DNA
- π Abiogenesis
- π MillerβUrey experiment
- π RNA
- π RNA World
- π Β§ Cryptography
- π HKDF
- π Adenosine
- π API/SLOC
- π The Heartbeat Hypothesis
- π Square-cube law
- π Actin
- π Amino acid
- π Cell
- π Protein
- π Oxygen
- π Motor Proteins
- π ATP
- π Mitochondrion
- π ATP synthase
- π Zen is not punishing your body but rather being comfortable under any circumstances
- π βYou should love meβ is a double bind
- π Double bind
- π How-to: create patch from directory
- π PARA Method
- π People do not oversleep
- π Double-entry accounting
- π Shadow Work
- π Carl Jung
- π Shadow
- π Affirmation
- π Alan Watts
- π Meditation is helpful for seeing your emotions
- π Use psychological projections to understand yourself
- π Psychological Projection
- π Self-Development Quotes
- π Functional requirements do not drive architecture
- π Lean Thinking
- π Collectorβs Fallacy
- π How to Choose Specialization
- π Stock Photos
- π Language
- π Justice
- π Gratitude Journal
- π Β§ Spiral Dynamics
- π Psychedelic
- π Collective Ego
- π Mastery
- π Homeostasis
- π Ego backlash
- π #quote
- π Β§ Emotion
- π Shinzen Young
- π Smalltalk
- π Nim
- π Ada
- π How-to: nrfjprog flashing
- π How-to: JLink view RTT logs
- π Python
- π How-to: Publish Python package
- π Common Lisp
- π Java
- π Quantum Physics
- π Dunning-Kruger effect
- π On-boarding
- π Γ Note-taking apps
- π Β§ Note-taking
- π How to write faster
- π Muay Thai
- π Micro-SaaS
- π Microbiology
- π Data structures for text editors
- π Code editing verbs
- π Non-text programming
- π How to make a popular projectional editor?
- π JetBrains
- π Editor funding
- π Funding
- π Editor
- π Β§ Design
- π Hickβs law
- π Β§ Psychology
- π Popups
- π Β§ Typography
- π Sketching
- π Fonts collection
- π Fonts
- π Make disabled buttons transparent, not gray
- π How design blends together
- π How-to: Create a SOCKS proxy with SSH
- π Β§ Software Development
- π Programming languages are empty of inherent existence
- π There are no boundaries in software development
- π Escalation
- π Criteria change
- π Five Whys
- π Design Patterns
- π Incremental introduction of features
- π Languages might be the same structurally
- π 1:1 meetings
- π Β§ Management
- π Documenting decisions
- π Documentation
- π Tools for software developers
- π Layered programming
- π Keyboard tweaks
- π Polyphasic sleep
- π Caffeine
- π Alarm clock is harmful to sleep
- π Sleep
- π How-to: Disable system application on Android
- π Distraction-free phone
- π (Touch-)Typing
- π 5-second rule
- π Β§ Productivity
- π List of dualities
- π Memory
- π What are memories?
- π What is motivation?
- π What is knowledge?
- π Fairness is subjective
- π Observations on thoughts
- π Β§ Cognitive Bias
- π Habits
- π Do Nothing meditation
- π Awareness Alone is Curative
- π #insight
- π Reasoning is self-biased
- π Actualized.org