- 개발/관리도구
- Git Is Not Revision Control
- REST 기반의 간단한 분산 트랜잭션 구현 - 2편 TCC Cancel, Timeout
- A Real-World WebAssembly Benchmark
- Something you didn't know about functions in bash
- Vue.js: the good, the meh, and the ugly
- Challenges of Moving from Projects to Products
- Timsort — the fastest sorting algorithm you’ve never heard of
- Tough times on the road to Starcraft
- How open is too open?
- A Human-Readable Interactive Representation of a Code Library
- Architecture styles
- POINTERS ARE MORE ABSTRACT THAN YOU MIGHT EXPECT IN C
- There was a time when search engines were a thing. And it seems they still are
- 소프트웨어가 얼마나 복잡해질 수 있는지에 대한 예제
- Exploiting a Natural Network Effect for Scalable, Fine-grained Clock Synchronization
- 55 New Features in JDK 9
- sk HN: Old CS lecturer looking for advice from current and recent students
- gcsf - a FUSE file system based on Google Drive
- Design case history: the Commodore 64
- WHY I USE THE IBM MODEL M KEYBOARD THAT IS OLDER THAN ME?
- [메리츠종금증권 인터넷/게임 김동희] 라인 컨퍼런스 2018 정리
- Phil’s Data Structure Zoo
- Debugging Microservices Applications w/ Service Mesh, openTracing & Squash
- Why you should not use Google Cloud.
- YAML: probably not so great after all
- Extracting Super Mario Bros levels with Python
- Reverse Engineering for Beginners
- Doing Windows, Part 2: From Interface Manager to Windows
- Django Newbie Mistakes
- Prowler 1.6: AWS Security Best Practices Assessment and Forensics Readiness Tool
- Cool New Features in Python 3.7
- Test-Driven Development with Python
- What I Learned Making My Own JIT Language
- Dangerous Optimizations and the Loss of Causality
- Assessing Loading Performance in Real Life with Navigation and Resource Timing
- b2blaze - Backblaze B2 provides the cheapest cloud object storage and transfer available on the internet.
- Effectively using AWS Reserved Instances
- API the Docs 참관 후기
- AntoraThe multi-repository documentation site generator for tech writers who love writing in AsciiDoc.
- carbon - Create and share beautiful images of your source code.
- Deep code search
- Massacring C Pointers
- 2018년과 이후 JavaScript의 동향 - 브라우저 밖의 JavaScript
- 16 blogs and newsletters to follow for DevOps practitioners
- Communicating with twits: How to minimize friction between Dev and SRE
- CPAN History
- Go with WebAssembly Early Examples
- Vibora APIs were heavily inspired by the awesome Flask.
- Intel and the Danger of Integration
- Making a low level (Linux) debugger part 2: C
- Resilient Web Design
- 웹 브라우저와 함께 하는 애니메이션 스티커 체커
- Why Crystal Is My Next Language
- How to log out when using JWT
- Dealing with Hard Problems
- Documenting RESTful APIs with Spring REST Docs
- Web Assembly and Go: A look to the future
- 고성능 서버/데이터베이스
- Google's Chiller-less Data Center
- A Primer on MySQL Online Schema Change
- Brad's Homelab - my home server & networking setup.
- It Was Raining in the Data Center(a Facebook story)
- 21st June 18. A post-mortem and an apology(by TransferWise)
- Serverless Performance: Cloudflare Workers, Lambda and Lambda@Edge
- Cluster Consensus: When Aeron Met Raft
- What To Do When MySQL Runs Out of Memory: Troubleshooting Guide
- MySQL High Availability at GitHub
- New Cloud Filestore service brings GCP users high-performance file storage
- Doing Windows, Part 1: MS-DOS and Its Discontents
- Oldest domains in the .com, .net, and .org TLDs
- THE VUE HANDBOOK
- The Modern Operating System in 2018
- Accessing S3 data through SQL with Presto
- How SQL Database Engines Work
- The Future of Distributed Databases Is Relational
토요일, 7월 07, 2018
[B급 프로그래머] 7월 1주 소식(개발/관리도구, 고성능 서버/데이터베이스 부문)
토요일, 6월 30, 2018
[B급 프로그래머] 6월 4주 소식(빅데이터/인공지능, 암호화폐/블록체인, 읽을거리 부문)
- 빅데이터/인공지능
- The Matrix Calculus You Need For Deep Learning
- Memorizing these three statistics will help you understand the world
- AI, 5천년을 연습해 인간을 게임에서 이기다
- Keras or PyTorch as your first deep learning framework
- 역전파 알고리즘 시각화 설명
- #define CTO OpenAI
- OpenAI Five (Dota 2)
- Berkeley DeepDrive(자율주행 차량 학습을 위한 빅데이터)
- Derivatives are Linear
- Layoffs at Watson Health Reveal IBM’s Problem With AI
- 40 Techniques Used by Data Scientists
- Life at the Intersection of AI and Society with Dr. Ece Kamar
- Notes on Discrete Mathematics
- Ways to think about machine learning by Benedict Evans
- A Brief History of CNNs in Image Segmentation: From R-CNN to Mask R-CNN
- Facial recognition is here to stay. And we should all probably accept it
- Engineering Uber Predictions in Real Time with ELK
- 신뢰의 진화(강력 추천)
- Big Data Processing with Apache Spark – Part 1: Introduction
- SNIPER is an efficient multi-scale object detection algorithm
- PayPal to buy Simility, a specialist in AI-based fraud and risk management, for $120M
- Deploying deep learning models: Part 1 an overview
- DensePose - A real-time approach for mapping all human pixels of 2D RGB images to a 3D surface-based model of the body
- Uber Neglected Simulation Testing on Self-Driving Cars, Insiders Say
- Behind the Tech with John Carmack: 5k Immersive Video
- Machine Learning: The High Interest Credit Card of Technical Debt
- The Math of Card Shuffling
- How Language Shapes the Way We Think
- How Computers Could Make Your Customer-Service Calls More Human
- This car is Autopilot. What happens next?
- 암호화폐/블록체인
- Crypto Coin Tether Defies Logic on Kraken’s Market, Raising Red Flags
- A REUTERS VISUAL GUIDE Blockchain explained
- CRDTs and the Quest for Distributed Consistency(추천)
- Major European Regulator, Banks Collaborate on Blockchain Warrant-Issuance System
- Introducing a16z crypto
- Andreessen Horowitz is launching a $300 million fund to invest in crypto — and it hired its first-ever female general partner to lead the effort
- Blockchain-powered password manager
- Architecting the Blockchain for Failure
- 블록체인 공부 자료 정리 v0.9
- Byzantine Failure - 블록체인 개발이 어려운 이유
- Blockchain: A technical primer
- Square Jumps After Receiving License to Let New York Customers Buy and Sell Bitcoin
- The Saddest Moment
- "이더, 증권 아니다" SEC 판단에…이더리움선물 곧 출시 기대
- "전세계 금융사, 블록체인 개발 17억달러"
- EOSIS DApp 개발
- 읽을거리
- Summer books 2018 by FT
- Middle-aged entrepreneurs are more successful than young ones. Here's why
- How Blockbuster MOOCs Could Shape the Future of Teaching
- How my role as CTO has changed as we've grown to 100 engineers
- What’s the real value of AI for your business and how can you capitalise? by PWC
- 하루 10분 하체운동, 건강수명 5년 늘어난다
- The latest trend for tech interviews: Days of unpaid homework
- “Find your passion” is bad advice, say Yale and Stanford psychologists
- Why Earth's History Appears So Miraculous
- [지뇽뇽 사회심리학] 삶이 허무하게 느껴질 때
- Intel and the Danger of Integration
- The Legend of Nintendo
- 넷플릭스를 경쟁자 삼은 '책덕 플랫폼' 데이터 기반 비즈니스의 '모범 교과서'
- New Study Concludes That Rewarding Good Teachers and Firing Bad Ones Accomplishes Nothing
- 투자자가 알아야 할 20가지 통계 수치 - 뱅크 오브 아메리카
- The Secrets of Resilience
- The Last of the Tiger Parents
- Researchers Find Herpes Viruses In Brains Marked By Alzheimer's Disease
- 강남엔 112개, 도봉엔 1개···한국점령 스타벅스의 비밀
- It’s Easier To Ask Forgiveness Than To Get Permission
- 반도체칩 두고 벌이는 ‘왕좌의 게임’
- It's People, Stupid (People Are Stupid?)
- [웹툰] 익명의 독서중독자들
- The Death of a Once Great City - The fall of New York and the urban crisis of affluence
- Messi Walks Better Than Most Players Run
- The importance of stupidity in scientific research
- An Unusual Design Aesthetic: Photos of Vintage Soviet Control Rooms
- UPS’s $20 Billion Problem: Operations Stuck in the 20th Century
토요일, 6월 23, 2018
[B급 프로그래머] 6월 3주 소식(개발/관리도구, 고성능 서버/데이터베이스 부문)
- 개발/관리도구
- How to Use Slack and Not Go Crazy
- Gravity is a powerful, dynamically typed, lightweight, embeddable programming language written in C without any external dependencies
- Performance patches in Go 1.11
- 백엔드 개발자를 꿈꾸는 학생개발자에게
- Finally, a Problem That Only Quantum Computers Will Ever Be Able to Solve
- Firefox Is Back. It’s Time to Give It a Try.
- Avoiding hour creep: get your work done and still go home at 5PM
- the state of type hints in Python
- Sunsetting React Native
- YAML: probably not so great after all
- There is only one OS, and it’s been obsolete for decades
- Accelerate large-scale applications with BOLT
- Now Microsoft ports Windows 10, Linux to homegrown CPU design
- Qt for WebAssembly
- wtf - The personal information dashboard for your terminal.
- How I use Wireshark
- x86 assembly doesn’t have to be scary (interactive)
- Streaming IO in Go - Reading and writing files in Go programs.
- Ask HN: How do I find a meaningful software engineering job?
- Audio MODEM Communication Library in Python
- SHIRT POCKET SLIDE RULE: HISTORY OF THE HP-35
- Full Cycle Developers at Netflix: from Mindsets to Self-Service Tooling
- Teach Programming to become a better programmer
- MIT Career Development Handbook [pdf]
- The Monaco Editor is the code editor that powers VS Code.
- An Unusual Design Aesthetic: Photos of Vintage Soviet Control Rooms
- Becoming a 10x Developer
- Floating-Point Determinism
- IEEE 754 Floating Point Type in C++
- Confessions of a Disk Cracker: the secrets of 4am.
- (번역) 아주 거대한 (자바스크립트) 어플리케이션을 구축하기
- Ask HN: Developers, how do you keep SSH and web URLs organized at work?
- Meet the GitLab Web IDE
- Blooming Password
- Strapdown.js makes it embarrassingly simple to create elegant Markdown documents.
- Chrome 64, Node.js v10에서는 GC가 mark하는 동안 앱이 멈추지 않습니다
- What does {some strange unix command name} stand for?
- Go Memory Management
- Packaging Python Projects
- What is Ultibo? Ultibo core is an embedded or bare metal development environment for Raspberry Pi.
- Golang — vgo vs dep — Dependency Management Tools Explained
- Caching beyond RAM: the case for NVMe
- pollyjs - Record, Replay, and Stub HTTP Interactions.
- universal command-line interface for SQL databases
- Takes in a GIF, short video, or a query to the Tenor GIF API and converts it to animated ASCII art. Animation and color support are performed using ANSI escape sequences.
- jp - dead simple terminal plots from JSON data. single binary, no dependencies. linux, osx, windows.
- Abjad is a Python API for Formalized Score Control
- WORLD CUP 2018 ...IN JSON
- LilyPond is a music engraving program, devoted to producing the highest-quality sheet music possible.
- Technical Advisory: "ROHNP"- Key Extraction Side Channel in Multiple Crypto Libraries
- 11 Javascript Utility Libraries You Should Know In 2018
- Programming Language Theory
- 웹브라우저 user-agent string 의 역사
- Understand Vim Mappings and Create Your Own Shortcuts!
- The Trouble with D3
- Titus, the Netflix container management platform, is now open source
- 툴을 쫓는 사람들 (번역)
- USB Product ID allocations for Free Software / Open Hardware
- The Inner Game of Self-Taught Development
- Building and Documenting Python REST APIs With Flask and Connexion
- Open-sourcing Sonar, a new extensible debugging tool
- Vim Is The Perfect IDE
- Learning operating system development using Linux kernel and Raspberry Pi
- How to Design Programs, Second Edition
- Hashing in Action: Understanding bcrypt
- Calendar Versioning
- Auto formatters for Python
- Bridged, NAT, Host Only, LAN Segment
- WebAssembly (And the Death of JavaScript?)
- Modern C++ Features – std::optional
- The 640K memory limit of MS-DOS
- Will Kubernetes Collapse Under the Weight of Its Complexity?
- Documenting with Sphinx and Readthedocs
- Learning Go’s Concurrency Through Illustrations
- The Hardest Program I've Ever Written
- JVM Internals
- The 6 components of Open-Source Data Science/ Machine Learning Ecosystem
- the state of type hints in Python
- 고성능 서버/데이터베이스
- 데이터베이스의 중심 이동 “오픈소스로 시작하지만 AWS로 마무리”
- PostgreSQL Features You May Not Have Tried But Should
- Best Practices Building Resilient Systems
- Scaling Uber's Elasticsearch Clusters
- ActorDB distributed SQL database
- Ubiq: A Scalable and Fault-tolerant Log Processing Infrastructure
- In MySQL, never use “utf8”. Use “utf8mb4”.
- Thanos - a Scalable Prometheus with Unlimited Storage
- Top 10 Performance Tuning Tips for Amazon Athena
- Scaling Uber’s Hadoop Distributed File System for Growth
토요일, 6월 16, 2018
[B급 프로그래머] 6월 2주 소식(빅데이터/인공지능, 암호화폐/블록체인, 읽을거리 부문)
- 빅데이터/인공지능
- Twitter meets TensorFlow
- Volvo invests in sensor start-up as part of self-driving push
- The 50 Best Free Datasets for Machine Learning
- CS109 Data Science
- What Is Conversational AI?
- Fitbit analyzed data on 6 billion nights of sleep – with fascinating results
- Back to the Future of Handwriting Recognition
- How Casinos Use Math To Make Money When You Play The Slots
- Tesla's Autopilot to get 'full self-driving feature' in August
- CS 228: Probabilistic Graphical Models
- Artificial intelligence is awakening the chip industry’s animal spirits
- Attacks against machine learning — an overview
- Why emergency braking systems sometimes hit parked cars and lane dividers
- The 6 components of Open-Source Data Science/ Machine Learning Ecosystem; Did Python declare victory over R?
- Models in Minutes not Months: AI as Microservices
- How The New York Times Uses Software To Recognize Members of Congress
- Beautiful [ AI ] - A fresh new way to build presentations
- Food Discovery with Uber Eats: Building a Query Understanding Engine
- DETAILS THAT LOOK SHARP TO PEOPLE MAY BE BLURRY TO THEIR PETS
- Facebook Gave Device Makers Deep Access to Data on Users and Friends
- horovod - Distributed training framework for TensorFlow, Keras, and PyTorch.
- A collection of Reinforcement Learning algorithms from Sutton and Barto's book and other research papers implemented in Python.
- Machine Intelligence at Google Scale
- Tools to Put Deep Learning Models in Production
- A Course in Machine Learning
- HEAT-SEEKING CAMERAS COULD HELP KEEP SELF-DRIVING CARS SAFE: 차량에도 FLIR를...
- 암호화폐/블록체인
- Geth network layer
- EOS EOSIO DApp 개발 – 스마트 컨트랙트 구현 – Todo
- Leaf-Node weakness in Bitcoin Merkle Tree Design
- Build a blockchain analytic solution with AWS Lambda, Amazon Kinesis, and Amazon Athena
- Software Multinational SAP Announces Launch of Cloud Blockchain Platform
- Blockchain Scalability: When, Where, How?
- Our path to listing SEC-regulated crypto securities
- Extracting the Private Key from a TREZOR
- The Graph - SCALABLE QUERIES FOR A DECENTRALIZED FUTURE
- The Importance of Layer 2
- Steering around blockchain hype
- Why Blockchain is Hard
- When Do I Need a Blockchain? A Hands-on Comparison of Decentralized and Centralized Application Development
- Google, Facebook and Uber: Has Their Blockchain Time Arrived?
- 읽을거리
- Gossiping Is Good - The surprising virtues of talking behind people’s backs
- Blurred Vision, Burning Eyes: This Is a Lasik Success?
- [DBR 경영의 지혜]3인조보다는 2인-7인팀이 더 효율적
- What makes a great leader, explained in eight counterintuitive charts
- Here Are the 14 Habits of Highly Miserable People
- It’s 2018 and USB Type-C is still a mess
- The Daily Shot: Job Openings Exceed the Number of Unemployed Americans
- The Lifespan of a Lie
- "표준의 탄생" 40주년 맞이한 인텔 8086 마이크로프로세서의 뒷 이야기
- Hot Heads: Why Mammals Need R.E.M. Sleep
- [김지수의 인터스텔라] "우린 모두 공평하게 엉망진창... 그것이 또한 위로될 것"
- Anthony Bourdain, Kate Spade, and the Preventable Tragedies of Suicide
- Bose noise-masking sleepbuds
- 기술없이 퇴직한 50대 중반, 적정몸값은 연1400만원
- 퇴임한 세계 반도체 대부 TSMC 회장 “중국 반도체 기술 10년 내 못 쫓아와”
- New research on customer expectations reveals new CIO mandate
- "가난이냐, 지루한 삶이냐..무엇을 선택할 것인가?"
- [김지수의 인터스텔라]최정상 美노화학자 "늙는 모습 천차만별이니 잘 늙는 데 투자하라"
- The Earliest Precursor of Writing
- Arm's Cortex-A76 CPU Unveiled: Taking Aim at the Top for 7nm
- CAN THIS MAN HELP UBER RECOVER FROM THE TRAVIS KALANICK ERA?
- Are you inadvertently encouraging your colleagues to bullshit you?
- There Are No Laws of Physics. There’s Only the Landscape.
- 일본 여행 정보(대단함)
- 기획자는 왜 IT 기업에서 점차 사라져 가는가
- The Psychology of Money
- Why Rich Kids Are So Good at the Marshmallow Test
- In investing, as in poker, following rules works best
- LAB APOCALYPSE(대학원 가기 전에 읽어볼만한...)
- THE YOUNG AND THE RECKLESS(XBox Hacking)
토요일, 6월 09, 2018
[B급 프로그래머] 6월 1주 소식(개발/관리도구, 고성능 서버/데이터베이스 부문)
- 개발/관리도구
- Getting started with Elasticsearch in Python
- PulltoRefresh.js - A small, but powerful Javascript library crafted to power your webapp's pull to refresh feature.
- 배시 셸스크립트 잘 정리된 글(추천)
- Tearing apart printf()
- A cat(1) clone with wings.
- GitLab Ultimate and Gold now free for education and open source
- What is ‘Site Reliability Engineering’?
- [GIT PULL] Device properties framework update for v4.18-rc1 by Linus
- How Browsers Work: Behind the scenes of modern web browsers
- Online Logic Emulator
- CORS (Cross-Origin Resource Sharing)(추천)
- Observations running 2 million headless sessions
- Python Application Layouts: A Reference
- Flycut - Clean and simple clipboard manager for developers
- LR Parsing: More Elegant Than You Think
- Sloc Cloc and Code - What happened on the way to faster Cloc
- data-serialization: ML v/s JSON v/s MsgPack v/s Protobuf v/s Thrift v/s Pickle v/s
- Meld for OSX - File and folder comparison made easy for Mac/OSX
- Tiny Pascal
- How I Came to Write D
- One year of C
- Interview: Google gVisor and the Challenge of Securing Multitenant Containers
- Acoustic Denial of Service Attacks on HDDs
- SmoothLife - Continuous Domain Game of Life in Python with Numpy
- Itertools in Python 3, By Example
- A cartoon intro to DNS over HTTPS
- AST for JavaScript developers
- Top 10 JavaScript errors from 1000+ projects (and how to avoid them)
- The real power of Linux executables
- nebulet - (Going to be) A microkernel that implements a WebAssembly "usermode" that runs in Ring 0.
- Why is Front-End Development So Unstable?
- Depressing and faintly terrifying days for the C standard
- Learn to crypto workshop
- 구글 고 언어를 위한 필수 웹 프레임워크 6종
- Unlock the Full Power of Ruby With RubyGuides
- UTC is enough for everyone...right?
- PacVim – A CLI Game To Learn Vim Commands
- Remediating the May 2018 Git Security Vulnerability
- kafka-manager - A tool for managing Apache Kafka.
- json-server - Get a full fake REST API with zero coding in less than 30 seconds (seriously)
- 30 years later, QBasic is still the best
- Oracle plans to dump risky Java serialization
- The Evolution of C Programming Practices: A Study of the Unix Operating System 1973–2015
- 여러 언어로 만드는 즐거운 REST API
- Taxi simulator using python coroutine
- Full Cycle Developers at Netflix — Operate What You Build
- 고성능 서버/데이터베이스
- Modern SQL: Evolution of a dinosaur
- Fault Tolerance Is Not High Availability
- 멀쩡한 코드가 프로덕션만 가면 느려지는 5가지 이유와 해결 방법
- Cloud SQL for PostgreSQL now generally available and ready for your production workloads
- Introducing Asylo: an open-source framework for confidential computing
- Microsoft Announces Azure Event Hubs for Kafka Ecosystems in Public Preview
- Today we mitigated 1.1.1.1
- Using AWS Application Load Balancer and Network Load Balancer with EC2 Container Service
- Amazon EFS, 서울 리전 출시
토요일, 6월 02, 2018
[B급 프로그래머] 5월 5주 소식(빅데이터/인공지능, 암호화폐/블록체인, 읽을거리 부문)
- 빅데이터/인공지능
- 내 머리 속의 빅브라더?··· 페이스북이 사용자에 대해 아는 것들
- What's Going On In Your Child's Brain When You Read Them A Story?
- Tesla in Autopilot mode crashes into parked Laguna Beach police cruiser
- How Brain Waves Surf Sound Waves to Process Speech
- Tesla that crashed in Autopilot mode sped up before hitting truck – police
- PRELIMINARY REPORT HIGHWAY HWY18MH010 (Uber self-driving car accident)
- Uber Self-Driving Car That Struck, Killed Pedestrian Wasn’t Set to Stop in an Emergency
- AI and Compute
- 김진철의 How-to-Big Data | 빅데이터 주요 기술의 조건 (3)
- 암호화폐/블록체인
- 스타벅스가 결제 시장에서 기술 기업을 능가하는 이
- How Futures Trading Changed Bitcoin Prices
- Towards a design philosophy for interoperable blockchain systems
- With At Least $1.3 Billion Invested Globally In 2018, VC Funding For Blockchain Blows Past 2017 Totals
- 블록체인-이상과 현실, 어디쯤 와 있나
- PoW 51% Attack Cost - This is a collection of coins and the theoretical cost of a 51% attack on each network.
- Ethereum’s Price Drop Possibly Due To Large ETH Sell-Off By EOS, Report Says
- The road to cashless societies
- Introducing FlureeDB, The World's First ACID-Compliant Blockchain Database
- Bitcoin Gold Hit by Double Spend Attack, Exchanges Lose Millions
- Understanding oracles
- A Beginner’s Guide to IPFS
- Why China’s Payment Apps Give U.S. Bankers Nightmares
- Bitcoin estimated to use half a percent of the world's electric energy by end of 2018
- 읽을거리
- Intel at last announces Optane memory: DDR4 that never forgets
- Mary Meeker’s 2018 internet trends report: All the slides, plus analysis(강추)
- To get a grip on altruism, see humans as molecules
- How to Avoid Distractions and Start the Right Company: Startup Tips from Sam Altman
- What I’ve Been Doing Since Quitting My Job
- [3040 해외 이코노미스트]① 신용석 워싱턴대 교수 "가족-동문 네트워크가 양극화 심화시켜"
- 지난 2년, 스타트업 투자는 '워라벨'에 몰렸다!
- Why would someone choose not to work at one of the big five tech companies (Google, Facebook, Microsoft, Amazon, and Apple)?
- What is something Googlers don't like about Google culture?
- Taking a break is part of your job
- Theranos founder Elizabeth Holmes may be our first true feminist anti-hero
- All the books Bill Gates has recommended over the last eight years
- Mind over matter? How fit you think you are versus actual fitness
- Mainframes and Supercomputers, From the Beginning Till Today.
- Our quantum problem
- The Three Habits of Highly Effective Product People
- GDPR is the most unifying thing to happen to the EU in a while
- The Amazing Psychology of Japanese Train Stations
- 애플의 차세대 7나노 A12 칩에 주목해야 하는 이유
- Pulitzer prize-winning author Philip Roth dies aged 85
- How did Michael Jackson challenge our understanding of spine biomechanics?
- Are ebooks dying or thriving? The answer is yes
- The Bill Gates Line
- World Wide Submarine Cable Map
토요일, 5월 26, 2018
[B급 프로그래머] 5월 4주 소식(개발/관리도구, 고성능 서버/데이터베이스 부문)
- 개발/관리도구
- What's ssh port forwarding and what's the difference between ssh local and remote port forwarding
- There's real reasons for Linux to replace ifconfig, netstat, et al
- 신규 Web 서비스시 고려해 볼 사항
- Quart is a Python asyncio web microframework with the same API as Flask.
- JavaScript Algorithms and Data Structures
- Linux Inside(eBook)
- Docker-based utility for testing network failures and partitions in distributed applications
- rom Java to Kotlin and Back Again
- Adobe Photoshop Source Code
- Why did I spend 1.5 months creating a Gameboy emulator?
- The future of AutoCAD
- Emulating The AT&T 3B2 Computer
- Production Readiness Checklist (for AWS)
- Source Code to the Digital Mars C and C++ compilers.
- Releasing the Eudora™ Email Client Source Code
- The death of “front-end developers”
- Learning Go’s Concurrency Through Illustrations
- Tearing apart printf()
- Microservices: A quick and simple definition
- CS50 Introduction to Game Development
- Steve Wozniak Talks Disk ][
- Shell Style Guide
- 유니크 아이디는 얼마나 길어야 하나?
- Ask HN: Amazon software engineers, how is the work culture now?
- What technical recruiters want from engineering candidates
- [그림 한장] System audit logging
- Build your own (insert technology here)
- Pyre: Fast Type Checking for Python
- The Evolution of C Programming Practices: A Study of the Unix Operating System 1973–2015
- Get more done at the Linux command line with GNU Parallel
- Configure DNS Over HTTPS in Firefox
- JVM Architecture 101: Get to Know Your Virtual Machine
- Kafka Streams - from the Ground Up to the Cloud
- The WebAssembly Revolution Has Begun
- Every major OS maker misread Intel's docs. Now their kernels can be hijacked or crashed
- CSE 392 - Programming Challenges
- ENERGY EFFICIENCY ACROSS PROGRAMMING LANGUAGES
- Why serverless computing is one of the biggest threats to containers
- “서버리스 컴퓨팅에서도 AWS가 강자” 심화되는 AWS 의존도에 주목하라
- Introducing extended line endings support in Notepad
- 개발 속도를 높여주는 소소한 팁 (Chrome)
- How Content Ignite successfully migrated to DigitalOcean in 2017
- Deploying PMM on Linode: Your $5-Per-Month Monitoring Solution
- Publishing JSON-LD for Developers
- A Recycled IP Address Caused Me to Pirate 390,000 Books by Accident
- Yubico and Microsoft Introduce Passwordless Login
- bash-handbook: bash 핸드북
- CEO Satya Nadella Gives the First Day Keynote at Microsoft Build 2018
- JMC Open Sourced!
- Announcing: MSVC Conforms to the C++ Standard
- 리눅스 서버 60초안에 상황파악하기
- 25th International Obfuscated C Code Contest (2018)
- Origins of the finger command
- Java’s Mysterious Interrupt
- Gitea - Git with a cup of tea - A painless self-hosted Git service.
- Some Common Concurrent Programming Mistakes
- AsyncIO for the Working Python Developer
- Learn Python Programming, By Example
- Ask HN: How long does it take you to learn a new language?
- Hello Qt for Python
- What SSH Hacking Attempts Look Like
- An introduction to Python bytecode
- Understanding the Limitations of HTTPS
- 고성능 서버/데이터베이스
- Web analytics at scale with Druid at naver.com
- MySQL 8.0: MVCC of Large Objects in InnoDB
- 클라우드 DNS의 장단점과 사전 점검 조건
- 340만 동접자 이후 서비스 다운 관련 사후 분석 내용
- Five Things You Probably Didn't Know About Amazon S3
- 샤딩은 어떻게 동작하는가 (How Sharding Works 번역)
- 칼럼 | 마침내 클라우드 DB의 시대가 열리고 있다
- 저가항공사 라이언에어, 전체 인프라를 AWS로 이전
- FlureeDB, A Practical Decentralized Database
- How to start a Go project in 2018
- ElasticSearch, OOM을 막아보자
- Amazon Aurora Backtrack – Turn Back Time
- Introducing Cloud Memorystore: A fully managed in-memory data store service for Redis
- Building a 120TB-daily data pipeline on DigitalOcean
- Introducing Updates for Load Balancers
- Speed Up MySQL with CPU Performance Virtualization
- How Binary Logs (and Filesystems) Affect MySQL Performance
- The beets blog: we’re pretty happy with SQLite & not urgently interested in a fancier DBMS.
수요일, 5월 23, 2018
[B급 프로그래머] 5월 3주 소식(빅데이터/인공지능, 암호화폐/블록체인, 읽을거리 부문)
- 빅데이터/인공지능
- 수많은 데이터 사이언티스트들이 직장을 떠나는 이유는 무엇인가?
- Amazon Pushes Facial Recognition to Police. Critics See Surveillance Risk.
- 너무 속이기 쉬운 인공지능
- AI로 안전 강조한 웨이모 “자율주행 자동차, 두려움 해결이 과제”
- Rules of Machine Learning: Best Practices for ML Engineering
- Eigenvectors and Eigenvalues
- 딥러닝 분산 플랫폼, C3DL
- Inside a Self-Driving Uber
- Explaining the Unexplainable
- Google's New Voice Bot Sounds, Um, Maybe Too Real
- Carnegie Mellon Launches Undergraduate Degree in Artificial Intelligence
- What’s New in Azure Machine Learning?
- Back to the Future: Demystifying Hindsight Bias
- data-integration - A lightweight opinionated ETL framework, halfway between plain scripts and Apache Airflow
- '알파고의 아버지' 허사비스, 길 찾기 인공지능 개발
- Everything Google announced at its 2018 I/O developers conference
- Scalable and accurate deep learning for electronic health records
- Google I/O Recap: Turning self-driving cars from science fiction into reality with the help of AI
- Who’s Winning the Self-Driving Car Race?
- Visual Studio IntelliCode
- Fonts for Complex Data
- Pure Python vs NumPy vs TensorFlow Performance Comparison
- ML.NET is an open source and cross-platform machine learning framework for .NET.
- CS109 Data Science
- Self-driving car crash in Arizona: Red light runner hits Waymo van
- Google Cloud for Healthcare: new APIs, customers, partners and security updates
- “평창 오륜기 드론쇼, 미래 한국에서 나올 수 있을까요”
- Cognitive scientists define critical period for learning language
- 수학자는 어떻게 인공지능을 발전시키는가?
- "20년 前 500여 명이던 골드만삭스 트레이더, 지금 3명 남았다"
- GPU database
- Expanding our GPU portfolio with NVIDIA Tesla V100
- 인도네시아 바다 불법어선 1만척, 구글 AI가 물리쳤다
- 암호화폐/블록체인
- 기업용 이더리움 블록체인 표준 확정...속도-상호운용성에 무게
- 블록체인 난제 해결 : 생체인식으로 분실된 암호화 키 복구
- 이더리움 심사 중인 미 증권위, ‘상품 또는 증권’ 여부에 다른 ICO에도 영향
- Yes, HTC is working on a ‘blockchain phone’
- Blockchain Just Isn’t As Radical As You Want It To Be
- Token Sale Market Overview: Q1 2018
- Robinhood Aims to Rival Coinbase in Crypto With $363 Million Funding Round
- Bloomberg Partners Novogratz’s Galaxy Digital Capital To Release Crypto Benchmark Index
- New Report On Crypto Ownership Shows ‘Majority Of Early Adopters Already On Board’
- 문돌이도 이해하는 스팀 디앱 (DApp)의 세계
- The EOSIO StackExchange is Live in Private Beta — Time to get the Q&A going!
- ‘블록체인과 GDPR’ 상극일까, 공생 관계일까?
- 작업 증명에서 지분 증명으로… 변화하는 블록체인 기반 암호화폐 거버넌스 방식
- The First Version of Ethereum's Casper Upgrade Has Been Published
- David Marcus Leaves Messenger to Focus on Blockchain Within Facebook
- The first rule of being a woman in crypto is you do not talk about being a woman in crypto
- Every Google search results in CO2 emissions. This real-time data viz shows how much
- Blockchain Workbench by Microsoft
- 골드만삭스 비트코인 트레이딩센터 준비
- “It Never Was a Security”: Ethereum Under The Regulatory Spotlight
- The Long Game in Crypto: Why Decentralization Matters
- An Introduction to Crypto (Andersson Horowitz)
- Introducing EOSIO Dawn 4.0
- Telegram’s billion-dollar ICO has become a mess
- 월마트 부사장이 블록체인으로 ‘개종’을 한 이유
- 글로벌 칼럼 | 블록체인이 모든 것의 '해답'이 될 수 없는 이유
- '서비스로서의 블록체인' 내놓은 6개사는 어디?
- "3분기 연속 2천% 증가"··· 블록체인 전문가 인기 '상종가'
- 스팀잇 "올해 이더리움 ERC20 같은 토큰 발행 기술 공개"
- Major Automakers Aim to Bring Blockchain to Cars
- 글로벌 금융기업 ING의 블록체인팀이 특별한 이유
- GDPR, 기업 블록체인 데이터베이스에 된서리 될까
- Bank of America - Blockchain Data Storage Patent Released
- 읽을거리
- Every Cell in Your Body Has the Same DNA. Except It Doesn’t.
- NASA’s EM-drive is a magnetic WTF-thruster
- This physicist’s ideas of time will blow your mind
- There's a dark side to friendships at work
- 플래시카드디럭스(Flashcards Deluxe 4.13) 한글 매뉴얼 (2018 NEW)
- 화성 탐사선 ‘인사이트’가 캘리포니아로 간 까닭은?
- How Science Saved Me from Pretending to Love Wine
- Stop Trying To Memorize — A Good Book Will Change You
- Smartphone shipments fall 6.3% in Europe in Q1 2018
- The Moral Cost of Cats
- https://www.newyorker.com/magazine/2018/02/12/why-paper-jams-persist
- Mindfulness may have been over-hyped
- Why I Believe Printers Were Sent From Hell To Make Us Miserable
- The Subtle Sexism Of Your Open Plan Office
- SpaceX Test-Fires New Falcon 9 Block 5 Rocket Ahead of Maiden Flight
- All the human flaws and biases that prevent you from managing money better
- 미래 기억(prospective memory)과 나이
- How to Survive Your 40s
- NASA advisers say SpaceX rocket technology could put lives at risk
- Subscription hell - How not to do paywalls
- Genetic Adaptation to Cold Brought Migraines With It
- Our Approach to Employee Security Training
- Rulers of the world: read Karl Marx!
- The Mac gaming console that time forgot
- Akin's Laws of Spacecraft Design(필독)
- [책의 향기]성공한 CEO가 꿈꾼 ‘유토피아적 일터’의 실체
- Why Men Love War
- Why Silicon Valley can’t fix itself
- Kim Jong Un Was Funny, Charming, and Confident but Brought His Own Toilet
- 2018 reform of EU data protection rules
- 왜 우리는 관리역량을 과소평가하는가?(필독)
- 小程序에서 위챗의 야망을 보다.
- Can’t sleep? Tell yourself it’s not a big deal
- Alphabet Announces Internet Availability of Proxy Materials for its 2018 Annual Meeting of Stockholders
- 이 세대의 공부
- What it means to “Disagree and Commit” and how I do it.
- The Numbers Behind WeWork’s Growing Empire
월요일, 5월 07, 2018
[독서광] 카프카, 데이터 플랫폼의 최강자
오늘은 간만에 기술서적 관련 독후감을 올려드리겠다. 오늘의 주인공은 검토를 위해 출간에 앞서 미리 읽기는 했지만, 그래도 다시 한 번 시간을 투자해 정독한 <카프카, 데이터 플랫폼의 최강자 - 실시간 비동기 스트리밍 솔루션 Kafka의 기본부터 확장 응용까지>라는 책이다. 카프카는 방대한 데이터를 다뤄야하는 기업 환경에서 중추적인 역할을 맡은 고가용성/고성능/실시간 데이터 버스를 구축하기 위해 사용하는 오픈소스 소프트웨어로서 데이터 수집, 처리, 분석 파이프라인을 단순하게 만들어주는 일등 공신이다.
일반적인 엔터프라이즈 환경에서는 관계형 데이터베이스를 중심으로 데이터 파이프라인이 구축되었다. 여러 가지 다양한 경로로 들어온 데이터는 일단 관계형 데이터베이스에 저장한 다음에 상호대화식 질의(SQL) 실행이나 분석을 위한 배치 작업(stored procedure) 실행 방식으로 비즈니스 논리를 구현했다. 실시간 처리가 필요하면 데이터베이스에 다소 부담을 주는 트리거를 걸거나 폴링 방식으로 특정 기간 윈도우 내의 데이터를 조건에 맞춰 뽑아내는 방식을 사용했고, 별도의 전문 검색 엔진으로 데이터베이스 레코드를 피딩한 다음에 비정형 검색을 수행하기도 했다. 하지만 이러다보니까 점점 데이터베이스에 부담이 늘어나게 되었고 뭔가 새로운 기능을 추가할 때마다 주먹구구식으로 연결해야 하는 어려움이 생겼다. 하지만 최근에는 데이터 버스를 구축해 들어오는/생성되는 방대한 데이터를 흘리고, 필요할 때마다 데이터 버스에서 가져와서 처리하는 방식으로 아키텍처가 바뀌고 있다. 처음부터 데이터 파이프라인을 잘 구축해놓으면 수평 확장 방식으로 성능을 높이는 동시에 기능이 추가될 때마다 얼기설기 위태위태 저글링을 하는 대신에 데이터 버스에서 선을 하나 끌어오면 끝난다. 처리한 데이터 역시 다시 데이터 버스로 흘리면 다른 곳에서 사용이 가능해지므로 표준화된 데이터의 고속도로를 구축할 수 있다.
아파치 카프카는 위에서 설명한 멋진 아키텍처 설계가 가능하도록 도와주는 훌륭한 도구지만, 일반적인 큐와는 달리 성능과 확장성이라는 두 마리 토끼를 모두 잡으려다 보니 개념을 잡기도 어려울 뿐더러 설치하고 설정하기는 더욱 복잡한 문제가 있다. <카프카, 데이터 플랫폼의 최강자>는 바로 이런 어려움을 해소하기 위해 카프카 기초 개념과 설치 방법부터 시작해 카프카의 설계 원칙과 프로듀서/컨슈머 예제에 이어 운영에 필요한 기초적인 지침을 제공한다. 그리고 실제 데이터 버스를 구축하고 나서 응용하기 위한 몇 가지 방안을 제시한다. ELK 스택을 사용해 카프카로부터 받은 데이터를 검색하고 시각화하는 방법을 시작으로, 최근 뜨고 있는 스트리밍 처리를 위한 카프카 스트림즈 프로그래밍 방식에 이어 카파 아키텍처를 위한 KSQL 예제를 소개한다. 마지막으로 클라우드(GCP, AWS) 환경에서 제공하는 카프카와 유사한 서비스인 펍/섭과 키네시스를 비교하면서 카프카와 비교한 장단점을 일목요연하게 정리하고 있다.
이 책을 읽고 나면 처음부터 새롭게 설계하는 시스템에만 카프카를 적용할 수 있는지 아니면 현재 운영 중인 시스템에도 카프카를 도입해서 고도화가 가능한지 궁금해질 것이다. 물론 새로 아키텍처를 설계하면서 카프카를 도입하는 방식이 효율성과 확장성을 높일 수 있지만, 기존 레거시 시스템의 아키텍처를 데이터 파이프라인 방식으로 변경할 경우에도 카프카는 아주 멋진 해법을 제시한다. 일단 들어오는 데이터를 OLTP 방식으로 직접 관계형 데이터베이스에 INSERT하는 대신 카프카에 밀어넣고 나서 커넥터를 사용해 관계형 데이터베이스로 넣는 방법을 생각해보자. 검색 기능이 필요하면 관계형 데이터베이스가 아니라 카프카에서 커넥터를 연결해 검색 엔진으로 넣으면 되고, 빅데이터 분석이 필요하면 커넥터를 연결해 하둡으로 보내면 된다. 이런 식으로 하나둘씩 관계형 데이터베이스를 중심으로 연결된 구조를 데이터 버스를 중심으로 분리된 파이프라인 구조로 변경해나가면 어느 순간 고도화가 완료된 전체 시스템을 목격할 수 있을 것이다. Confluent와 협력사, 오픈소스 공동체들이 만든 다양한 Kafka Connect 목록을 보면 카프카를 활용해 만들 수 있는 엔터프라이즈 아키텍처가 머리 속에 그려지지 않을까?
결론: 데이터를 중심으로 돌아가는 아키텍처를 구축하기 위해 노력하는 아키텍트와 개발자라면 이 책을 읽어보면 속이 시원해질 것이다.
보너스: 카프카에 대해 잘 정리된 자료 두 가지를 소개한다.
EOB토요일, 5월 05, 2018
[B급 프로그래머] 5월 1주 소식(개발/관리도구, 고성능 서버/데이터베이스 부문)
- 개발/관리도구
- 윈도우 백업 시스템, 아직도 애플 타임머신을 따라잡지 못하는 이유
- NGINX Releases Open Source Web Server with Dynamic Configuration
- layerJS - UI composition & animation in pure HTML
- Bootstrap 4: Everything You Need to Know
- Adding BigInts to V8
- Google Maps Platform
- Small, fast library to create ANSI colored strings and codes. [go, golang]
- Open-sourcing gVisor, a sandboxed container runtime
- Microsoft Releases a "Windows Command Reference" For Over 250 Console Commands
- TIC-80 tiny computer 0.60.3
- Making art with SSH key randomart
- C Is Not a Low-level Language
- It’s COBOL all the way down
- You don’t need a CS degree to be a successful engineer, but it helps.
- I interviewed at five top companies in Silicon Valley in five days, and luckily got five job offers
- VS Code Extensions for Happier JavaScript Coding
- Golang library for reading and writing Microsoft Excel™ (XLSX) files.
- Lessons from Building Static Analysis Tools at Google
- ReLaXed - Create PDF documents using web technologies
- Python Exceptions: An Introduction
- The False Allure of Hashing for Anonymization
- Develop Your Development Experience
- mermaid - Generation of diagrams and flowcharts from text in a similar manner as markdown.
- Sustainable On-Call
- Competitive Programmer’s Handbook
- NHN엔터, ‘토스트 UI 캘린더’ 오픈소스로 공개
- Top 5 Best Jupyter Notebook Extensions
- What happens when you run `cp` on the command line?
- How long does it take to linear search 200MB in memory?
- Cloud Native Java Has A New Home: Jakarta EE
- Monitoring SRE's Golden Signals
- GitLab Web IDE Goes GA and Open-Source in GitLab 10.7
- Finding design errors before it’s too late
- [B급 프로그래머] (Quora) 구글 또는 아마존에 다니는 경력 개발자들이 가장 유용하다고 생각하는 자료 구조는?(본인이 쓴 글)
- 데브캣 스튜디오의 NDC2018 슬라이드 모음
- A look at terminal emulators, part 2
- A look at terminal emulators, part 1
- Google's "Director of Engineering" Hiring Test
- NDC 기사(퍼블릭)
- Top 10 Things To Do With GraalVM
- Notes on structured concurrency, or: Go statement considered harmful
- Monitoring Kubernetes (part 1)
- "자바 11 로드맵"에서 예상되는 새로운 기능
- 파이썬 생존 안내서 (자막)
- Announcing a single C++ library manager for Linux, macOS and Windows: Vcpkg
- So Long Last /8 and Thanks For All the Allocations
- zxcvbn - Low-Budget Password Strength Estimation
- Improved code caching
- INTRODUCTION TO APACHE SPARK WITH PYTHON
- Another reason why your Docker containers may be slow
- 훌륭한 목수(개발자)는 연장을 탓하지 않는다?
- Beta for Qt for WebAssembly Technology Preview
- Parsing JSON is a Minefield
- PCF Platform Monitoring with Prometheus and Grafana
- Let’s Synchronize Threads in Python
- Big Data Processing with Apache Spark – Part 1: Introduction
- Blind since birth, writing code at Amazon since 2013
- 2,000+ awesome hieroglyphs, coming soon to Unicode
- Thread Pools
- Best Practice: Should Not Block Threads
- Weekly Command: going over Git history with tig
- Mustard UI is a starter CSS framework that actually looks good.
- Inside the Linux boot process
- Proposed Schedule for JDK 11
- github learning lab's courses
- Why Software Estimation Is More Important Now Than Ever
- Create TUI on Python
- VS Code can do that?!
- Why I Deleted My IDE; and How It Changed My Life For the Better
- Tunna - Interactive bindshell over HTTP
- 23 JavaScript design patterns
- Mouthful is a self-hosted alternative to Disqus
- VIM AFTER 15 YEARS
- Java, max user processes, open files
- (Front End) Scroll to the future
- 고성능 서버/데이터베이스
- Cloud Database Features Comparison - Amazon RDS vs Google Cloud SQL
- Twitter is moving a portion of its infrastructure to Google Cloud
- gh-ost - GitHub's Online Schema Migrations for MySQL
- Apple Open Sources FoundationDB
- Salsify – A New Architecture for Real-time Internet Video
- A Look at MyRocks Performance
- Scaling a High-traffic Rate Limiting Stack With Redis Cluster
- Postgresql split - Only one DB node active
- Apache Kafka Best Practices
- Scripts of the presentation "Query Optimizer – MySQL vs. PostgreSQL"
- One Giant Leap For SQL: MySQL 8.0 Released
- f4: Facebook’s Warm BLOB Storage System
- RDB부터 검색엔진까지··· 내게 꼭 맞는 DB 고르기
- Ghostferry is a library that enables you to selectively copy data from one mysql instance to another with minimal amount of downtime.
- HTTP Analytics for 6M requests per second using ClickHouse
- How We Moved Our API From Ruby to Go and Saved Our Sanity










