Tuesday, August 1, 2017

What was I reading in July 2017?

2017-07-03

- Drones may soon have to identify themselves electronically while in flight
- 2FA using a postcard!
- Fake news: you ain t seen nothing yet - Remind me again why I visit this web site? It's Aug 1st and I'm locked out because I've "reached my limit". New candidate for the HN News filter, I guess.

2017-07-04

- alexanderepstein/Bash-Snippets
- Eastlink customer's 20-year-old email account shut down over unusual address - I'm skeptical but will withhold comment until the address is used elsewhere.

2017-07-06

- Chicago To Make Future Plans a Graduation Requirement - Can hear it now: "I would have graduated if not for that meddling bureaucrat." (Points for a Scooby Do reference?)
- Putin Signs Law to Remove Pirate Proxies From Search Engines
- A rift in the NTP world - (*sigh*) The whole lot needs to be sent to bed without their dinner.
- Florence Nightingale Saved Far More People With Her Grasp Of Numbers Than Of Nursing

2017-07-07

- Monte Carlo theory methods and examples - Note: Be very careful with your use cases! (My apologies to my coworker who used the Monte Hall gambit as an example but I did enjoy that.)
- OpenBSD Will Get Unique Kernels on Each Reboot. Do You Hear That Linux Windows?
- Running Any Linux Browser in (almost) Headless Mode - On my "to do" list. (This has "trouble" written all over it.)

2017-07-08

- Elon Musk's big battery brings reality crashing into a post-truth world
- Where Machine Learning meets rule-based verification
- Introducing HumbleNet: a cross-platform networking library that works in the browser

2017-07-11

- Qubes OS
- Slaying the 'math monster': It's not about numbers it's about learning how to think.

2017-07-12

- Contempt Culture - The Particular Finest
- Elliptic Curve Cryptography Tutorial

2017-07-19

- Machine Learning Crash Course: Part 4
- Machine Learning Crash Course: Part 1 ML B
- Machine Learning Crash Course: Part 2 ML B
- Machine Learning Crash Course: Part 3 ML B
- learnbyexample/Command-line-text-processing

2017-07-20

- The future of deep learning

2017-07-21

- Cosette: An Automated SQL Solver
- On Password Managers
- The rise of Python for Embedded Systems
- Kaisa Matom ki Dreams of Primes
- How Checkers Was Solved
- NIST Randomness Beacon
- Introducing Bluetooth Mesh Networking - I've been working with Z-Wave and Zigbee technologies for the past month. Mesh Bluetooth is something that I'd like to see, if only for having another option for automation.

2017-07-22

- Movidius launches a $79 deep-learning USB stick - Trying hard to come up with a use case so I can justify buying a handful!
- Browser Abuse Syndrome - This is how your lunch gets eaten. #stuck_in_the_90s

2017-07-24

- To become a data scientist focus on coding
- Alternatives to a Degree to Prove Yourself in Deep Learning
- The clever electronic inks rewriting our energy future
- A Practical Guide to Tree Based Learning Algorithms

2017-07-25

- NTLM Hash Leaks: Microsoft's Ancient Design Flaw

2017-07-26

- TeachCraft - (Minecraft plus Python)
- Voice Synthesis for in-the-Wild Speakers via a Phonological Loop
- How to: Create a Z-Wave Smart Home hub using a Raspberry Pi
- MS Paint is here to stay
- Microsoft Paint Was Never Going to Die But It Made for Good Headlines

2017-07-29

- Tracing a packet journey using Linux tracepoints perf and eBPF
- One of the fathers of modern computing used this 6-step process to solve any problem

2017-07-30

- The Worst Internet in America - I'm thinking that their source for data is the comms companies 'cause the data appears to be COMPLETE AND UTTER BS! My mom lives in an Appalachian area with a single line strung into the one side of the valley. Because she and most everyone else doesn't live near it, they don't have Internet. Hint: on cell phone maps, it's a blank spot.
- Millennials are the ones keeping libraries alive
- Going down the rabbit hole with go-fuzz
- Robot cracks open safe live on Def Con's stage
- Breaking open the MtGox case part 1
- Waze for Android Auto is Here - I've already installed it. Now I remember why I used to say "Don't cross the Waze Lady!" (heh)

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Sunday, July 9, 2017

Bash - exit on failure

The problem

Scripts like the following will execute each step, even if one fails:

 #!/bin/bash
 
 echo "Shutting down mysqld. Please wait."
 
 # following shuts down mysql before stopping the container
 docker exec mysql /usr/bin/mysqladmin shutdown
 
 echo "Stopping the individual containers..."
 
 # stop the containers
 docker stop mysql
 docker stop sphinx
 docker stop apache

The problem with the above is that: if MySQL service does not completely shutdown (i.e., has some sort of error), there is nothing to stop the script from executing the last three steps. Without the database services stop, those will corrupt your database. (I learned this the hard way.)

One solution

The desirable solution is for the script to exit without stopping the Docker services. This can be done by making the MySQL shutdown line look like:

 docker exec mysql /usr/bin/mysqladmin shutdown || \
  { echo 'MySQL shutdown failed' ; exit 1; }

Note: above should all be on a single line (without the "\").

The above gives you a warning that something didn't work right and exits the script before attempting to stop the Docker containers.

Sunday, July 2, 2017

Copy and paste in a terminal

LatestHackingNews has an article about Linux commands, one of which involves using the keyboard to copy and paste. The article indicates that ctrl-c will copy whatever's highlighted to the clipboard. This isn't accurate in that ctrl-c does what you expect it to do (interrupt a running process). The proper key sequence is shift-ctrl-c (paste is shift-ctrl-v).

Saturday, July 1, 2017

What was I reading in June 2017

2017-06-02

- GEF - GDB Enhanced Features documentation
- Practical Guide to Bare Metal C GitBook
- Free software is suffering because coders don't know how to write documentation - It's not limited to free software.
- Pinboard Acquires Delicious - I miss the original verison of Delicious. The later versions, not so much.
- Mobile Sensors Exploitation

2017-06-06

- The Telnet BBS Guide - Ah, memories....
- Krypt.co scores a $1.2M seed round to simplify developer encryption key security

2017-06-08

- Five years of IPv6: whither the next five? APNIC Blog
- The Boolean Satisfiability Problem [SAT] and SAT solvers in 5 mins or more - A bit math-heavy.
- A Brief History of the UUID - I'm of the opinion that the faster you put technology and people on line, the sooner we'll start seeing collisions (not every conforms to standards, even when you make it mandatory).
- How highly advanced hackers ab used satellites to stay under the radar

2017-06-09

- Docker Containers Are Hard Just Like All Great Technologies - Container Journal - I might agree to that statement later. For now, Docker containers are hard because the developers keep modifying features and syntax. Then again, mebbe I'm just annoyed because I've had to rewrite Dockerfiles due to deprecated features.

2017-06-10

- Jupyter Notebooks

2017-06-11

- Visual Cryptography Kit

2017-06-12

- forsyth / plan9-9k Bitbucket - Wife once asked me what I'd do when Linux becomes mainstream. My answer: probably run Plan9. (heh)

2017-06-13

- Grammar Puss - One possible quick-answer: because we don't conduct business in slang. Contracts writing, as well as technical spec writing requires very structured grammar. If you cannot speak/write properly, your corporate customers are likely to take their business elsewhere. Also, good luck with getting that job interview if your resume contains "jank", "dox", "fubar", and/or similar words.

2017-06-14

- 16 commands to check hardware information on Linux
- The 25 Most Disruptive Companies of the Year

2017-06-15

- Writing a Unix Shell - Part I
- mattn/sudo - Sudo for Windows? Not sure if it's a good idea but it should be about as entertaining to watch as a Windows user try to exit Vim.
- Beginner's Guide to Linkers

2017-06-17

- The calibre Content server calibre 3.0.0 documentation

2017-06-18

- Revealed: Facebook exposed identities of moderators to suspected terrorists
- Why You Should Stop Using a Raspberry Pi for Everything - This comes across as click-bait. The RPi is a learning/development tool, not infrastructure. The article leverages another article which is eaven worse (e.g., "You can't run MS Office on a Pi" is treated as a rational justification.)
- Keys Tokens and Too Much Trust Found in Container Images

2017-06-19

- Open Textbook Library
- Your own company? You can do it!
- vendu/wizardcode
- Intro to SDR and RF Signal Analysis
- 10 Free Must-Read Books for Machine Learning and Data Science
- Language summit lightning talks [LWN.net]
- DeepMind Open Source Datasets DeepMind
- Security/Guidelines/OpenSSH - MozillaWiki
- The new subtle ways the rich signal their wealth

2017-06-20

- The Stack Clash

2017-06-23

- Why So Many Top Hackers Hail from Russia Krebs on Security
- Erlang/OTP 20.0
- Academy - MLJAR - Machine learning training.
- Government wants to permanently legalize the right to repair - I've always felt that this is something that should be left to "the market". Once an industry angers its customer base, it's ripe for "disruption".
- 7 Ways to Get Better at C During this Summer

2017-06-24

- How to Call B.S. on Big Data: A Practical Guide

2017-06-25

- Audio streaming: Icecast HLS MP3
- astorfi/TensorFlow-World

2017-06-27

- AWS Security Primer
- Deep Learning in Robotics Robohub
- Over 150 of the Best Machine Learning NLP and Python Tutorials I've Found
- Quantum Computing: A beginner s notes and overview of IBM's Quantum Experience - The developerWorks Blog
- This Ikea Bowl Has Been Setting Things on Fire

2017-06-28

- European Commission - PRESS RELEASES - Press release
- 'Infarm' Startup Wants To Put a Farm In Every Grocery Store - I can't get away from the thought that this is being stood up by non-farmers. How fast do they think things grow? They're going to need a lot of space, for lengthy periods of time, with no immediate ROI.
- Canada's top court backs order for Google to remove firm's website from global searches - Yet another group of people who don't understand how search engines work. Hint: take the data off of the source and ask the search engine to re-index the site. Otherwise the data is still on the Internet. Google just won't be able to find it (but other search engines will).

2017-06-29

- 5 Cool Docker Projects You May Have Missed - Container Journal
- Sysdig Container isolation gone wrong
- Explain like I'm 5: Kerberos

2017-06-30

- Couple Asks Internet To Photoshop Out Shirtless Guy From Engagement Photo Regrets It Immediately
- What Happens When You Ask The Wrong Guy For Help 10 New Pics

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Friday, June 2, 2017

What was I reading in May 2017

2017-05-01

- How to Read Mathematics
- Building a BlackBerry QNX 7 Desktop
- How to point GDB to your sources

2017-05-02

- Getting Started with Headless Chrome - I'm thinking that this consume a sizable portion of my future.
- Why Walking Helps Us Think
- Programming as a Way of Thinking

2017-05-03

- Kryptonite - the new home for your SSH private key. - I have this feeling that it's not an improvement of security. It's a convenience, therefore...
- evilsocket/opensnitch - One to watch?
- Fix your crappy ads and I'll stop blocking them - The author closes the browser tab. I go a bit further and inject code into my browser that highlights (in yellow) any link to the site, warning me that they have crappy ads. In short, I don't block the ads, I avoid the site altogether.
- Forensics - TeamViewer file extraction

2017-05-04

- OpenSSH Removes SSHv1 Support

2017-05-05

- Machine To Machine Talk Using ESP8266

2017-05-06

- Thousands of Veterans Want to Learn to Code But Can't
- Avoid these 35 habits that lead to unmaintainable code
- Why Don't People Return Their Shopping Carts? - This is one of my peeves. We have strong winds here and my cars have had more than one scratch from these wheeled missiles.

2017-05-07

- The hijacking flaw that lurked in Intel chips is worse than anyone thought
- WuTheFWasThat/vimflowy - This can also be used as typing practice for new Vi/Vim users.

2017-05-08

- MTK51 8051 Microcontroller Trainer Kit
- A Lot of What Is Known about Pirates Is Not True, and a Lot of What Is True Is Not Known
- The Physicist Who Sees Crime Networks

2017-05-09

- New device can harvest indoor light to power electronics
- Announcing SyntaxNet: The World's Most Accurate Parser Goes Open Source
- The Discipline of Chaos Engineering - Not only is it a good idea to know what "normal" looks like, you should be familiar with what "abnormal" looks like...
- Maintainers make the world go round
- Google releases DIY open source Raspberry Pi 'Voice Kit' hardware -- here's how to get it
- IPv6 as a metadata store

2017-05-10

- KFUZZ, a fuzzer story.
- Amazon enables free calls and messages on all Echo devices with Alexa Calling

2017-05-11

- “Google Is as Close to a Natural Monopoly as the Bell System Was in 1956″ - Complete and utter BS from another self-promoting armchair critic. Big != monopoly. He's also ignorant if he thinks that musicians don't make their primary income from touring.
- Lasp: a little further down the Erlang rabbithole. This is not a Monad tutorial
- SQL Notebook
- Exploiting the Linux kernel via packet sockets
- Get started Learning Music (Beta)
- Beware of Transparent Pixels

2017-05-12

- dns-violations - Given the ways DNS has been "adapted" to support miscellaneous non-DNS services, I'm not sure that this is worth the time being put into it.
- Standing Up to a Dangerous New Breed of Patent Troll
- When Bash Scripts Bite

2017-05-14

- Your Brain Can Only Take So Much Focus - Yeah, but it's like a muscle. With practice, you can focus longer. (Warning: Crappy ad website. Vertical reading area =~ 50% of browser.)

2017-05-15

- The Tools We Use To Stay Afloat
- Rejection Letter - Could this be where the Iraqi Information Minister retired? (geesh)

2017-05-16

- MP3 is dead missed the real much better story

2017-05-17

- The Secret History of William Gibson's Never-Filmed Aliens Sequel
- Amazon Announces Notifications for Alexa' Feature Is Coming Soon Sign-Up to Stay Tuned

2017-05-20

- Scientists Claim 'Cold Spot' In Space Could Offer Evidence of a Parallel Universe

2017-05-22

- So You Want to Learn to Break Ciphers
- Algorithms and Data Structures
- PyCon 2017 - YouTube

2017-05-23

- Building a legacy search engine for a legacy protocol
- Updating Logitech Hardware on Linux

2017-05-24

- taviso/loadlibrary
- Don't use Hadoop - your data isn't that big
- US politicians think companies should be allowed to 'hack back' after WannaCry - If this becomes law, I'll attempt to corner the market on popcorn.

2017-05-26

- MicroPython running "bare metal" in the browser via unicorn.js
- The Magic of XOR
- Little Things I Like to Do with Git
- Repurposing Thin Clients
- A brief history of IPv4 address space exhaustion
- 1922: Why I Quit Being So Accommodating
- Dirty COW and why lying is bad even if you are the Linux kernel

2017-05-28

- The American Scholar: Writing English as a Second Language
- Reflections on reflection (attacks)
- firmware-security-training

2017-05-31

- (Important: the reach of a patent) IMPRESSION PRODUCTS INC. v. LEXMARK INT'L INC.
- Overview of top cryptocurrencies
- Pipes - Watching this one. I miss Yahoo Pipes.
- Computer science students should learn to cheat not be punished for it - Uh. No. Doing so defeats the purpose of learning how to do something (which is why the school is there). In the long run, someone will be sued for misappropriating someone else's code.
- Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities
- MySQL 8.0: Retiring Support for the Query Cache
- oss-security - Qualys Security Advisory
- Writing a Unix Shell - Part I
- Remaining Trouble Spots with Computational Thinking

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Monday, May 1, 2017

What was I reading in April 2017

April was a busy month. Took a course on security for embedded devices (explains the gap at the end). Picked up an external 480 GB drive the size of two postage stamps. Overhauled one laptop. Installed Linux on two others (harder than it sounds when you're wrestling UEFI _and_ TPM). Sick for a number of days with whatever bug was hanging around. In short, those are my excuses for the 10 day gap near the end of April's reading list.

2017-04-01

- Open Source Needs FPGAs; FPGAs Need an On-ramp
- The Shell Hater's Handbook
- Why Japan's Rail Workers Can't Stop Pointing at Things
- How to Write Portable C Without Complicating Your Build
- Destroying Cockroaches and the Hackathon Experience
- Microsoft closing down CodePlex, tells devs to move to GitHub - This is one of those things that probably shouldn't be announced on April 1st.
- ExplainShell.com - Remains to be seen if this is actually useful.

2017-04-05

- Over The Air: Exploiting Broadcom's Wi-Fi Stack - Part 1
- GHOST IN THE SHELL : Ash Thorp
- How To Learn Hadoop For Free

2017-04-06

- Unix is not an acceptable Unix
- Build Your Own Text Editor
- SEI CERT C Coding Standard - SEI CERT C Coding Standard
- Oath isn't just a terrible name, it's going to be a nightmare ad-tracking machine
- ShelfJoy - 17 Essential Machine Learning books suggested by Michael I. Jordan from Berkeley

2017-04-07

- corkami/pics - Posters for various technical bits.
- Federated Learning: Collaborative Machine Learning without Centralized Training Data

2017-04-08

- Introduction to the Domain Name System DNS
- The 5 Phases of Vim Use

2017-04-10

- Exploring 3-Move - A LambdaMOO inspired environment
- My giant JavaScript Basics course is now live on YouTube. And it's free.

2017-04-11

- The Bulwer-Lytton Fiction Contest - An annual contest to come up with the worst ever opening line for a book that doesn't exist (in a recognizable category, I think). Goal for self: achieve (at least) a "dishonorable mention".
- Vi's Complete Key Binding List
- New York becomes only state to offer free four-year college - Sure, now that I've spent a decade paying off my school debt...
- Packet Sniffing on Layer 2 Switched Local Area Networks

2017-04-12

- How To Secure Your Web App With HTTP Headers

2017-04-18

- Open Source Search Engines Retrieval Tools and Libraries - I agree with V3ss: Why wasn't SphinxSearch mentioned? (I'm using it in a home-grown document management system and a bookmark tracker.)
- nvbn/thefuck
- Learn 90 of Python in 90 Minutes
- The Hacker Dictionary - Hacker terms lingo slang and acronyms
- How To Host Your Own Private Git Repositories
- How to write a simple operating system in assembly language
- Unfixed security bugs
- Low level programming university

2017-04-19

- I reverse engineered a motherboard
- StarCraft 1.18 Release: 18 April 2:00 PM PDT - StarCraft Forums

(insert excuses for 10 days sick+busy here)

2017-04-30

- How Many x86-64 Instructions Are There Anyway?
- Learn LaTeX in 30 minutes

Above was generated by a homegrown bolt-on script for Wallabag, which is a free utility for capturing web content so that it can be read later.

Friday, April 14, 2017

Finding RSS feeds

One you have a feed reader up and running, you'll want to subscribe to RSS feeds that support your favorite topics. You can search for them with Google, by using the "inurl" or "filetype" search modifiers. Example searches could include:
 inurl:rss security
 filetype:rss linux
 inurl:xml asterisk
 filetype:atom sphinx search
Note that there are multiple feed formats (rss, atom, xml, etc.) so it's recommended that you experiment with the search parameters.