if you have a CyanogenOS phone and can disable updates on it, do so.
For instance if you have a OnePlus One…
[WayBack] Reddit: tkannelid comments on The Death of CyanogenMod and What it Means for Development
–jeroen
Posted by jpluimers on 2016/12/26
if you have a CyanogenOS phone and can disable updates on it, do so.
For instance if you have a OnePlus One…
[WayBack] Reddit: tkannelid comments on The Death of CyanogenMod and What it Means for Development
–jeroen
Posted in Android Devices, OnePlus One, Power User | Leave a Comment »
Posted by jpluimers on 2016/12/26
Shortly before the “Free Windows 10 Update” deadline I upgraded a bunch of physical and virtual machines each with different configurations providing various challenges.
Back then, I didn’t have time to properly write down notes so I saved a bunch of links. Now I found time to add a few notes below.
Note there are fewer Windows 10 editions (Home/Pro/Enterprise) are different than before so there is a mapping (for instance Windows Ultimate does not map to Windows Enterprise): Windows 10 free upgrade matrix.
It’s much easier, faster and disk-space friendly to install from ISO than waiting for GWX.exe or GWXUI.exe, especially when installing multiple systems in a row.
I don’t use x86 systems any more so I used Win10_1511_2_English_x64.iso which is slightly newer than Win10_1511_1_English_x64.iso and is likely to be outdated by now so get yours through https://www.microsoft.com/software-download/windows10.
If you insist, there is Win10_1511_2_English_x32.iso (note the x64 -> x32 consistency, many people refer to it as x86 though).
Windows 10 does not like to upgrade when you have the Daemon Tools ISO mounting tool installed. But Portable WinCDEmu is fine.
The Windows 10 installer doesn’t suffer from Portable WinCDEmu not mounting after reboot: during the first install step it copies enough to continue without the ISO image mounted after reboot.
Just run the SETUP.EXE in the root of the CD drive.
Some systems do not have optical media any more so you need to create bootable media.
In the past, you used ImageX for that (e.g. Step-by-Step: Basic Windows 7 Deployment for IT Professionals), but as of Windows 8/Server 2008 R2 there is DISM: Apply Images Using DISM.
I used this command-line to copy from H: (the content of the ISO image) to V: (the VHD drive):
dism /apply-image /imagefile:H:\Sources\install.wim /index:1 /ApplyDir:V:\
More information at DISM Image Management Command-Line Options and DISM.exe Replaces ImageX.exe – My Thoughts On IT… (you can even use it to backup/restore file-based Windows images).
In the past (think Windows XP and earlier), you had BOOT.INI to choose which one to boot. Now there are msconfig and Boot Configuration Data editors like bcdedit and bcdboot for that:
You cannot update Windows 10 on a “Boot to VHD” based system: it’s one of the limitations in What is not supported for native boot when using VHDs:
There is a cumbersome workaround using Hyper-V which I didn’t use (look for “How do I install the November Update if Windows 10 is running on a VHD using native boot?” in Hands-on with Windows 10: Upgrading, installing and activating in the real world | ZDNet).
These are the steps I used to get it on a VHD (based on the How to install Windows 10 to VHD and create a dual boot system with Win 7/8 video below):
bcdboot V:\WindowsYou can use an existing VHD for DISM in which case you might need to Resize/extend virtual hard disk to get more space under Windows 7/8/10.
If you get an error 0x80041023 during key validation at install time, then retry it later. Often the validation then just works. If it doesn’t, try to Activate Your Windows 10 License via Microsoft Chat Support or phone based activation:
- Press Windows key + X then clickRun, then type: slui.exe 4
- Next press the ‘ENTER’ key
- Select your ‘Country’ from the list.
- Choose the ‘Phone Activation’ option.
- Stay on the phone (do not select/press any options) and wait for a person to help you with activation.
- Explain your problem clearly to the support person.
–jeroen
Posted in Power User, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows XP | Leave a Comment »
Posted by jpluimers on 2016/12/26
X-mas day 2 thought:
best defense might be to refrain from doing things that don’t look good on the front pages of the world’s newspapers
Source: Organizational Doxing – Schneier on Security
–jeroen
Posted in About, LifeHacker, Opinions, Personal, Power User | Leave a Comment »
Posted by jpluimers on 2016/12/26
Great after X-mas watch: Robert C Martin – Functional Programming; What? Why? When? – YouTube subtitled “the failure of state”.
Thanks [WayBack] Andrew Rohn – YouTube for the timestamp list:
- 4:07 “Functional Programming: What? When? Why?”
or“The Failure of State”- 5:10 Rich Hickey is the author of Clojure. Listen to his talks. 5:40 What is state? Variables.
- 11:15 Structure and Interpretation of Computer Programs. This is a fascinating book. For the first 250 pages, the book uses no assignment statements.
- 14:15 Here’s how SICP’s model of computing worked before they introduced an assignment statement. Simply replace a function call with its implementation.
- 15:58 Once you introduce assignment. You can no longer replace a function call with its implementation. Why? Because the state of the system may have changed. An assignment statement introduces the concept of time.
- 18:04 Side effect: an assignment statement. If there’s no assignment, there’s no side effect.
- 20:22 What “hack” have we done to protect us from memory leaks? Garbage collection.
- 31:46 Functional programming was invented in 1957 before OO and structured. But memory was too expensive to make it practical. But memory is cheap now.
- 32:53 Should we change how we program? We should because: 1) Functional programs are simpler – which makes them easier to write and maintain 2) There’s no temporal coupling – no worrying if some function was called before another function. 3) Fewer concurrency issues. In a purely functional program, there’s no concurrency because there is no state. 4) No asking, “What’s the state?”
- 38:38 We’re using multicore CPU’s now because we can’t increase clock rate anymore. And hardware makers are doing bizarre tradeoffs. They’re making individual processors slower but putting more processors in. So individual cores slow down but the chip throughput goes up if you can take advantage of all the cores.
- 42:00 How are you going to work with an abundance of cores? Maybe we need to walk away from the assignment statement.
- 49:49 OO = procedure + state. OO is exposed procedure but hidden state (encapsulation). It’s possible to write functional programs using an OO style. All of the objects become immutable.
–jeroen
Posted in Design Patterns, Development, Functional Programming, Software Development | Leave a Comment »
Posted by jpluimers on 2016/12/23
A while ago that bitsavers published a picture of an Apple 1992 Tesseract Motherboard.
It’s from the 68k to PowerPC RISC transition Apple made in the second half of the 1980s and first half of the 1990s where several groups within Apple were working on new equipment.
More details of those are here:
Note this is not [Wayback] TesSeRact from the DOS TSR (Terminate and Stay Resident) days:
- [Wayback/Archive.is] INT 2F – TesSeRact RAM-RESIDENT PROGRAM INTERFACE AX = 5453h (less colors and no navigation at the top of the page, but indentation makes it easier to grasp calling register values)
- [Wayback/Archive.is] Int 2F/AX=5453h: Int 2F/AX=5453h TesSeRact RAM-RESIDENT PROGRAM INTERFACE AX = 5453h (seems easier to read because of colorations, but lacks indentation, so it is harder to understand calling register values)
Via [Wayback] Ralf Brown’s Files
Downloadable files by Ralf Brown:x86/MS-DOS Interrupt List, RBcomm, SPAWNO, AMISLIB, DV-GLUE, RBdualVGA,RBkeyswap, RBspeed, PCICFG, CMU-EBMT. (20aug10)
–jeroen
Posted in 68k, History, MS-DOS, Power User, PowerPC, Tesseract, TSR Terminate and Stay Resitent | Leave a Comment »
Posted by jpluimers on 2016/12/23
Interesting: diskutil secureErase freespace LEVEL /Volumes/DRIVENAME
–jeroen
Source: How to securely delete files in OS X 10.11 ‘El Capitan’ | MacIssues
Posted in Apple, Mac, Mac OS X / OS X / MacOS, Mac OS X 10.4 Tiger, Mac OS X 10.5 Leopard, Mac OS X 10.6 Snow Leopard, Mac OS X 10.7 Lion, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, MacMini, OS X 10.10 Yosemite, OS X 10.8 Mountain Lion, OS X 10.9 Mavericks, Power User | Leave a Comment »
Posted by jpluimers on 2016/12/22
A while ago I bumped into [WayBack] Where can I get the glossary of Microsoft’s standard translations for computer terms? – The Old New Thing
Since I’m a non-digital pack-rat as well, I love [WayBack] this comment by [WayBack] Ian Boyd:
We have an *old* copy of the Microsoft Style Guide – an actual book. From that book i’ll always remember that e-mail has a hyphen in it.
I’ve that book too and write e-mail the same way.
But books are often hard to search through, so I love this list that [WayBack] Raymond Chen made:
- [WayBack] Microsoft Language Portal
- [WayBack] Interactive search
- [WayBack] Terminology collection
- [WayBack] Style guides
- [WayBack] Microsoft Language Portal Blog – News and updates for Microsoft users, customers and developers to efficiently localize software and services.
- [WayBack] User Interface Language Management (Windows)
I especially like the [WayBack] interactive search, but with any outcome, please remember that the context of your translation is very important.
For instance, I vividly remember a project some 20+ years ago where we had to translate the words “Close” and “Cancel” in the realm of the insurance business.
All guides indicated “Close” should become “Sluiten” which in that realm is colloquial for “Afsluiten” which means “to take out an insurance” implying a totally wrong action. Similarly “Cancel” translated to “Annuleren” which in the same realm would mean “to cancel an insurance”.
So we went for very specific translations narrowing down what exactly would happen in those screens, like:
–jeroen
Posted in Development, internatiolanization (i18n) and localization (l10), Software Development, The Old New Thing, Windows Development | Leave a Comment »
Posted by jpluimers on 2016/12/22
In functional programming, sequences are an important way of expressing logic.
This G+ post by Colin Johnsun discusses a library and a Spring4D way to handle sequences: I’ve release a library that allows you to iterate through a collection of items without using loops…
It’s interesting when mapping, reducing and solving many other problems in a functional way.
Background:
–jeroen
Posted in Delphi, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »
Posted by jpluimers on 2016/12/21
I saw a lot of people mention the Eric Ligman, Microsoft Director of Sales Excellence Blog a while ago: FREE! That’s Right, I’m Giving Away MILLIONS of FREE Microsoft eBooks again! Including: Windows 10, Office 365, Office 2016, Power BI, Azure, Windows 8.1, Office 2013, SharePoint 2016, SharePoint 2013, Dynamics CRM, PowerShell, Exchange Server, System Center, Cloud, SQL Server and more! | Microsoft Director of Sales Excellence – Eric Ligman
Even though I make most of my income from the Microsoft World, my main machine is a Mac and I dislike browsing
So I wanted to download them all in one easy go so SpotLight could index them.
Luckily there is a file that has all the download URLs in it: http://ligman.me/29zpthb (it expands to http://www.mssmallbiz.com/ericligman/Key_Shorts/MSFTFreeEbooks.txt and is archived at http://web.archive.org/web/*/http://www.mssmallbiz.com/ericligman/Key_Shorts/MSFTFreeEbooks.txt).
The file is mentioned at How to “Download All” of the FREE eBooks and Resources in My FREE eBooks Giveaway | Microsoft Director of Sales Excellence – Eric Ligman.
It’s very easy to download from there using wget (on Windows get it from https://eternallybored.org/misc/wget/ – the x64 versions work fine).
Be sure to use a “recent” version as 1.12 and lower have no support for the --trust-server-names parameter which makes wget use filenames from the http 301 followed links:
--trust-server-names If this is set to on, on a redirect the last component of the redirection URL will be used as the local file name. By default it is used the last component in the original URL.
This is the script:
wget -m -np --trust-server-names http://ligman.me/29zpthb
wget -m -np --trust-server-names --input-file www.mssmallbiz.com/ericligman/Key_Shorts/MSFTFreeEbooks.txt
You might think why not do just wget -m -np --trust-server-names --input-file http://ligman.me/29zpthb in one go?
Simple answer: like all software, wget occasionally crashes somewhere in the middle of downloading the URLs embedded.
If you restart, then it sees the followed http://ligman.me/29zpthb file has already been downloaded and won’t re-scan its contents.
Bug? I’m not sure. But the two-liner just works.
–jeroen
PS: if you want a script with all the URLs, try these:
https://news.ycombinator.com/item?id=12071552
| wget –trust-server-names -m -np http://ligman.me/29ngkYn | |
| wget –trust-server-names -m -np http://ligman.me/29jL5wW | |
| wget –trust-server-names -m -np http://ligman.me/29afIRV | |
| wget –trust-server-names -m -np http://ligman.me/29pyHgR | |
| wget –trust-server-names -m -np http://ligman.me/29dmbfC | |
| wget –trust-server-names -m -np http://ligman.me/29ollRF | |
| wget –trust-server-names -m -np http://ligman.me/29gvv67 | |
| wget –trust-server-names -m -np http://ligman.me/29pzkHg | |
| wget –trust-server-names -m -np http://ligman.me/29CWQ20 | |
| wget –trust-server-names -m -np http://ligman.me/1G0Cm7T | |
| wget –trust-server-names -m -np http://ligman.me/29vDVrw | |
| wget –trust-server-names -m -np http://ligman.me/29CW4SV | |
| wget –trust-server-names -m -np http://ligman.me/29G1z1N | |
| wget –trust-server-names -m -np http://ligman.me/29yWAAO | |
| wget –trust-server-names -m -np http://ligman.me/29DHWHq | |
| wget –trust-server-names -m -np http://ligman.me/1HGwMgm | |
| wget –trust-server-names -m -np http://ligman.me/29yUVeH | |
| wget –trust-server-names -m -np http://ligman.me/29ErxWs | |
| wget –trust-server-names -m -np http://ligman.me/29EsHkr | |
| wget –trust-server-names -m -np http://ligman.me/29v5zCF | |
| wget –trust-server-names -m -np http://ligman.me/1H32nUT | |
| wget –trust-server-names -m -np http://ligman.me/29yixk9 | |
| wget –trust-server-names -m -np http://ligman.me/29vq6d2 | |
| wget –trust-server-names -m -np http://ligman.me/29cvrjG | |
| wget –trust-server-names -m -np http://ligman.me/29pzjTR | |
| wget –trust-server-names -m -np http://ligman.me/29rPOf6 | |
| wget –trust-server-names -m -np http://ligman.me/29ctW9z | |
| wget –trust-server-names -m -np http://ligman.me/29gvoHt | |
| wget –trust-server-names -m -np http://ligman.me/29gvfEd | |
| wget –trust-server-names -m -np http://ligman.me/29LvcBg | |
| wget –trust-server-names -m -np http://ligman.me/29DS3gJ | |
| wget –trust-server-names -m -np http://ligman.me/1q9L65I | |
| wget –trust-server-names -m -np http://ligman.me/29pufLO | |
| wget –trust-server-names -m -np http://ligman.me/29wODdA | |
| wget –trust-server-names -m -np http://ligman.me/29vch9q | |
| wget –trust-server-names -m -np http://ligman.me/29EmfZc | |
| wget –trust-server-names -m -np http://ligman.me/29LXmMt | |
| wget –trust-server-names -m -np http://ligman.me/29qwKfQ | |
| wget –trust-server-names -m -np http://ligman.me/29sp3nZ | |
| wget –trust-server-names -m -np http://ligman.me/29yWFFf | |
| wget –trust-server-names -m -np http://ligman.me/29ZNaMN | |
| wget –trust-server-names -m -np http://ligman.me/29gYy5h | |
| wget –trust-server-names -m -np http://ligman.me/29NhudA | |
| wget –trust-server-names -m -np http://ligman.me/29jDRJf | |
| wget –trust-server-names -m -np http://ligman.me/29conIf | |
| wget –trust-server-names -m -np http://ligman.me/29cnLlL | |
| wget –trust-server-names -m -np http://ligman.me/29fNYRE | |
| wget –trust-server-names -m -np http://ligman.me/29cq9cw | |
| wget –trust-server-names -m -np http://ligman.me/29acqhj | |
| wget –trust-server-names -m -np http://ligman.me/29fJJCS | |
| wget –trust-server-names -m -np http://ligman.me/29nbxWK | |
| wget –trust-server-names -m -np http://ligman.me/29fO9MV | |
| wget –trust-server-names -m -np http://ligman.me/29pr2x1 | |
| wget –trust-server-names -m -np http://ligman.me/29oa0kH | |
| wget –trust-server-names -m -np http://ligman.me/29i6ntm | |
| wget –trust-server-names -m -np http://ligman.me/29n7JVF | |
| wget –trust-server-names -m -np http://ligman.me/29fQsQ4 | |
| wget –trust-server-names -m -np http://ligman.me/29fQo2J | |
| wget –trust-server-names -m -np http://ligman.me/29idz8T | |
| wget –trust-server-names -m -np http://ligman.me/29dfwlu | |
| wget –trust-server-names -m -np http://ligman.me/29fLliP | |
| wget –trust-server-names -m -np http://ligman.me/29i83TI | |
| wget –trust-server-names -m -np http://ligman.me/29diypX | |
| wget –trust-server-names -m -np http://ligman.me/29fNpHO | |
| wget –trust-server-names -m -np http://ligman.me/29oefNf | |
| wget –trust-server-names -m -np http://ligman.me/29jGTgC | |
| wget –trust-server-names -m -np http://ligman.me/29crPhL | |
| wget –trust-server-names -m -np http://ligman.me/29FUJIk | |
| wget –trust-server-names -m -np http://ligman.me/1G2oDNG | |
| wget –trust-server-names -m -np http://ligman.me/29u5uMT | |
| wget –trust-server-names -m -np http://ligman.me/29rlRt3 | |
| wget –trust-server-names -m -np http://ligman.me/29Yd9V0 | |
| wget –trust-server-names -m -np http://ligman.me/29s4EQ1 | |
| wget –trust-server-names -m -np http://ligman.me/29vkv6E | |
| wget –trust-server-names -m -np http://ligman.me/29A3q8Z | |
| wget –trust-server-names -m -np http://ligman.me/29H7ovO | |
| wget –trust-server-names -m -np http://ligman.me/1dHMOui | |
| wget –trust-server-names -m -np http://ligman.me/1G2pw8X | |
| wget –trust-server-names -m -np http://ligman.me/29gnaPK | |
| wget –trust-server-names -m -np http://ligman.me/29d7GZH | |
| wget –trust-server-names -m -np http://ligman.me/29i2Mvf | |
| wget –trust-server-names -m -np http://ligman.me/29rbpkY | |
| wget –trust-server-names -m -np http://ligman.me/29e6cTO | |
| wget –trust-server-names -m -np http://ligman.me/29hJU1c | |
| wget –trust-server-names -m -np http://ligman.me/29bcJtd | |
| wget –trust-server-names -m -np http://ligman.me/29bcRZO | |
| wget –trust-server-names -m -np http://ligman.me/29d5mS2 | |
| wget –trust-server-names -m -np http://ligman.me/29cz6OD | |
| wget –trust-server-names -m -np http://ligman.me/29fDult | |
| wget –trust-server-names -m -np http://ligman.me/29pEdjN | |
| wget –trust-server-names -m -np http://ligman.me/29rwoY0 | |
| wget –trust-server-names -m -np http://ligman.me/29fTQrx | |
| wget –trust-server-names -m -np http://ligman.me/29gfrkN | |
| wget –trust-server-names -m -np http://ligman.me/29rwoHw | |
| wget –trust-server-names -m -np http://ligman.me/29d5AbX | |
| wget –trust-server-names -m -np http://ligman.me/29fudHc | |
| wget –trust-server-names -m -np http://ligman.me/29FzGG5 | |
| wget –trust-server-names -m -np http://ligman.me/29osNwd | |
| wget –trust-server-names -m -np http://ligman.me/29a22WR | |
| wget –trust-server-names -m -np http://ligman.me/29alDpK | |
| wget –trust-server-names -m -np http://ligman.me/29fDylj | |
| wget –trust-server-names -m -np http://ligman.me/29jPTCx | |
| wget –trust-server-names -m -np http://ligman.me/29d5XTw | |
| wget –trust-server-names -m -np http://ligman.me/29rUIci | |
| wget –trust-server-names -m -np http://ligman.me/29hVdVa | |
| wget –trust-server-names -m -np http://ligman.me/29ijDhm | |
| wget –trust-server-names -m -np http://ligman.me/29pn5e2 | |
| wget –trust-server-names -m -np http://ligman.me/29ckVx7 | |
| wget –trust-server-names -m -np http://ligman.me/29cfePX | |
| wget –trust-server-names -m -np http://ligman.me/29vGIvY | |
| wget –trust-server-names -m -np http://ligman.me/29hfnPR | |
| wget –trust-server-names -m -np http://ligman.me/29fCVFe | |
| wget –trust-server-names -m -np http://ligman.me/29a6YLu | |
| wget –trust-server-names -m -np http://ligman.me/29n4GwJ | |
| wget –trust-server-names -m -np http://ligman.me/29jAS3v | |
| wget –trust-server-names -m -np http://ligman.me/29ci56U | |
| wget –trust-server-names -m -np http://ligman.me/29nW9L3 | |
| wget –trust-server-names -m -np http://ligman.me/29hV6ZM | |
| wget –trust-server-names -m -np http://ligman.me/29d1qAV | |
| wget –trust-server-names -m -np http://ligman.me/29pfpbI | |
| wget –trust-server-names -m -np http://ligman.me/29v8nwX | |
| wget –trust-server-names -m -np http://ligman.me/29uq452 | |
| wget –trust-server-names -m -np http://ligman.me/29d1wc3 | |
| wget –trust-server-names -m -np http://ligman.me/29Y1O7a | |
| wget –trust-server-names -m -np http://ligman.me/29a7wRA | |
| wget –trust-server-names -m -np http://ligman.me/29pnEEG | |
| wget –trust-server-names -m -np http://ligman.me/1FYtDD8 | |
| wget –trust-server-names -m -np http://ligman.me/1HByNKS | |
| wget –trust-server-names -m -np http://ligman.me/1NCfcKC | |
| wget –trust-server-names -m -np http://ligman.me/1HCDxl9 | |
| wget –trust-server-names -m -np http://ligman.me/1HCCCRP | |
| wget –trust-server-names -m -np http://ligman.me/1H4Q0e5 | |
| wget –trust-server-names -m -np http://ligman.me/1JI6V77 | |
| wget –trust-server-names -m -np http://ligman.me/1CSMobd | |
| wget –trust-server-names -m -np http://ligman.me/1jWMJA2 | |
| wget –trust-server-names -m -np http://ligman.me/1m6xucg | |
| wget –trust-server-names -m -np http://ligman.me/1onTg9n | |
| wget –trust-server-names -m -np http://ligman.me/1n49kzj | |
| wget –trust-server-names -m -np http://ligman.me/1sgBtn4 | |
| wget –trust-server-names -m -np http://ligman.me/1qZlnOJ | |
| wget –trust-server-names -m -np http://ligman.me/TWa2Dg | |
| wget –trust-server-names -m -np http://ligman.me/1vM9mwt | |
| wget –trust-server-names -m -np http://ligman.me/1qzON6Q | |
| wget –trust-server-names -m -np http://ligman.me/1rB8nl1 | |
| wget –trust-server-names -m -np http://ligman.me/TL3pn1 | |
| wget –trust-server-names -m -np http://ligman.me/1vM9H2d | |
| wget –trust-server-names -m -np http://ligman.me/29odbJ6 | |
| wget –trust-server-names -m -np http://ligman.me/1LSKTC0 | |
| wget –trust-server-names -m -np http://ligman.me/1qC1pu4 | |
| wget –trust-server-names -m -np http://ligman.me/1dHSpRh | |
| wget –trust-server-names -m -np http://ligman.me/1LO5k1Y | |
| wget –trust-server-names -m -np http://ligman.me/1M7Xr5v | |
| wget –trust-server-names -m -np http://ligman.me/29jLNtX | |
| wget –trust-server-names -m -np http://ligman.me/29agpuw | |
| wget –trust-server-names -m -np http://ligman.me/29cv8FE | |
| wget –trust-server-names -m -np http://ligman.me/29ieXIo | |
| wget –trust-server-names -m -np http://ligman.me/29dmCXi | |
| wget –trust-server-names -m -np http://ligman.me/29jLjnM | |
| wget –trust-server-names -m -np http://ligman.me/29agkqx | |
| wget –trust-server-names -m -np http://ligman.me/29gvTBJ | |
| wget –trust-server-names -m -np http://ligman.me/29pztuz | |
| wget –trust-server-names -m -np http://ligman.me/29dmTJT | |
| wget –trust-server-names -m -np http://ligman.me/29ieSEI | |
| wget –trust-server-names -m -np http://ligman.me/29hB9CQ | |
| wget –trust-server-names -m -np http://ligman.me/29fOWdV | |
| wget –trust-server-names -m -np http://ligman.me/1JPNIAt | |
| wget –trust-server-names -m -np http://ligman.me/29Xnqk8 | |
| wget –trust-server-names -m -np http://ligman.me/29oRWlp | |
| wget –trust-server-names -m -np http://ligman.me/29csX4C | |
| wget –trust-server-names -m -np http://ligman.me/29jH8bx | |
| wget –trust-server-names -m -np http://ligman.me/29pcQFA | |
| wget –trust-server-names -m -np http://ligman.me/29FkNr3 | |
| wget –trust-server-names -m -np http://ligman.me/12FIapt | |
| wget –trust-server-names -m -np http://ligman.me/13WvGXa | |
| wget –trust-server-names -m -np http://ligman.me/1bPPb6C | |
| wget –trust-server-names -m -np http://ligman.me/12FIZ1I | |
| wget –trust-server-names -m -np http://ligman.me/16CaDM1 | |
| wget –trust-server-names -m -np http://ligman.me/19LwMLI | |
| wget –trust-server-names -m -np http://ligman.me/1JHmqiB | |
| wget –trust-server-names -m -np http://ligman.me/1KHqGNK | |
| wget –trust-server-names -m -np http://ligman.me/1M7Ycve | |
| wget –trust-server-names -m -np http://ligman.me/1LSOsIu | |
| wget –trust-server-names -m -np http://ligman.me/1UrQDFx | |
| wget –trust-server-names -m -np http://ligman.me/TUmyTW | |
| wget –trust-server-names -m -np http://ligman.me/1NLviCk | |
| wget –trust-server-names -m -np http://ligman.me/17iaq4l | |
| wget –trust-server-names -m -np http://ligman.me/1bPRqqz | |
| wget –trust-server-names -m -np http://ligman.me/17iah0Q | |
| wget –trust-server-names -m -np http://ligman.me/1287Jt4 | |
| wget –trust-server-names -m -np http://ligman.me/29djdrk | |
| wget –trust-server-names -m -np http://ligman.me/29rLH2H | |
| wget –trust-server-names -m -np http://ligman.me/29fNPxT | |
| wget –trust-server-names -m -np http://ligman.me/29ddm60 | |
| wget –trust-server-names -m -np http://ligman.me/29gsnHt | |
| wget –trust-server-names -m -np http://ligman.me/29nc2QS | |
| wget –trust-server-names -m -np http://ligman.me/29fOrnd | |
| wget –trust-server-names -m -np http://ligman.me/29dk0Ze | |
| wget –trust-server-names -m -np http://ligman.me/29aewh2 | |
| wget –trust-server-names -m -np http://ligman.me/29gteI8 | |
| wget –trust-server-names -m -np http://ligman.me/29ibJVq | |
| wget –trust-server-names -m -np http://ligman.me/29fKMD6 | |
| wget –trust-server-names -m -np http://ligman.me/29cthAz | |
| wget –trust-server-names -m -np http://ligman.me/29ohqUT | |
| wget –trust-server-names -m -np http://ligman.me/29crGiw | |
| wget –trust-server-names -m -np http://ligman.me/29gsFOl | |
| wget –trust-server-names -m -np http://ligman.me/29ncgrb | |
| wget –trust-server-names -m -np http://ligman.me/29fKWdi | |
| wget –trust-server-names -m -np http://ligman.me/29djvi9 | |
| wget –trust-server-names -m -np http://ligman.me/29FW41O | |
| wget –trust-server-names -m -np http://ligman.me/29ddKBp | |
| wget –trust-server-names -m -np http://ligman.me/29dkhf4 | |
| wget –trust-server-names -m -np http://ligman.me/29rML6Q | |
| wget –trust-server-names -m -np http://ligman.me/29hxyEN | |
| wget –trust-server-names -m -np http://ligman.me/29fPweO | |
| wget –trust-server-names -m -np http://ligman.me/29fPMug | |
| wget –trust-server-names -m -np http://ligman.me/29fPnIe | |
| wget –trust-server-names -m -np http://ligman.me/29hxogT | |
| wget –trust-server-names -m -np http://ligman.me/29deg2k | |
| wget –trust-server-names -m -np http://ligman.me/29pwCBO | |
| wget –trust-server-names -m -np http://ligman.me/29fPAec | |
| wget –trust-server-names -m -np http://ligman.me/29deQgz | |
| wget –trust-server-names -m -np http://ligman.me/29afaLE | |
| wget –trust-server-names -m -np http://ligman.me/29pxarl | |
| wget –trust-server-names -m -np http://ligman.me/29ne5V5 | |
| wget –trust-server-names -m -np http://ligman.me/29csBjh | |
| wget –trust-server-names -m -np http://ligman.me/29dkZZK | |
| wget –trust-server-names -m -np http://ligman.me/29ojrAy | |
| wget –trust-server-names -m -np http://ligman.me/29jJLdx | |
| wget –trust-server-names -m -np http://ligman.me/29df2fw | |
| wget –trust-server-names -m -np http://ligman.me/29cu6sX | |
| wget –trust-server-names -m -np http://ligman.me/29dlaE5 | |
| wget –trust-server-names -m -np http://ligman.me/29FZx0B | |
| wget –trust-server-names -m -np http://ligman.me/29idnpO | |
| wget –trust-server-names -m -np http://ligman.me/29dlH9d | |
| wget –trust-server-names -m -np http://ligman.me/29cs157 | |
| wget –trust-server-names -m -np http://ligman.me/29dkq1V | |
| wget –trust-server-names -m -np http://ligman.me/29aelm3 | |
| wget –trust-server-names -m -np http://ligman.me/29ycEnb | |
| wget –trust-server-names -m -np http://ligman.me/29w5gr9 | |
| wget –trust-server-names -m -np http://ligman.me/29pfQ50 | |
| wget –trust-server-names -m -np http://ligman.me/1sgMWDe | |
| wget –trust-server-names -m -np http://ligman.me/29w68w8 | |
| wget –trust-server-names -m -np http://ligman.me/29viFmi | |
| wget –trust-server-names -m -np http://ligman.me/29zYWzl | |
| wget –trust-server-names -m -np http://ligman.me/29H2bo1 | |
| wget –trust-server-names -m -np http://ligman.me/29AT60J | |
| wget –trust-server-names -m -np http://ligman.me/29xtlNa | |
| wget –trust-server-names -m -np http://ligman.me/29xtHDs | |
| wget –trust-server-names -m -np http://ligman.me/29GpFsY | |
| wget –trust-server-names -m -np http://ligman.me/29ddd2b | |
| wget –trust-server-names -m -np http://ligman.me/29fJpEc | |
| wget –trust-server-names -m -np http://ligman.me/29cs7Fg | |
| wget –trust-server-names -m -np http://ligman.me/29fJA2g | |
| wget –trust-server-names -m -np http://ligman.me/29cqzzq | |
| wget –trust-server-names -m -np http://ligman.me/29ddbYb | |
| wget –trust-server-names -m -np http://ligman.me/29rLlZV | |
| wget –trust-server-names -m -np http://ligman.me/29ialCf | |
| wget –trust-server-names -m -np http://ligman.me/29pvj5I | |
| wget –trust-server-names -m -np http://ligman.me/29hwj8y | |
| wget –trust-server-names -m -np http://ligman.me/29dj7zY | |
| wget –trust-server-names -m -np http://ligman.me/1sl39Hs | |
| wget –trust-server-names -m -np http://ligman.me/1anyEJj | |
| wget –trust-server-names -m -np http://ligman.me/17icbPc | |
| wget –trust-server-names -m -np http://ligman.me/ZZezok | |
| wget –trust-server-names -m -np http://ligman.me/12S035G | |
| wget –trust-server-names -m -np http://ligman.me/12RZWY1 | |
| wget –trust-server-names -m -np http://ligman.me/13PlvVY | |
| wget –trust-server-names -m -np http://ligman.me/12FMEMP | |
| wget –trust-server-names -m -np http://ligman.me/128a1ID | |
| wget –trust-server-names -m -np http://ligman.me/19LCgpM | |
| wget –trust-server-names -m -np http://ligman.me/13Pn1XY | |
| wget –trust-server-names -m -np http://ligman.me/13WChkr | |
| wget –trust-server-names -m -np http://ligman.me/12FN71F | |
| wget –trust-server-names -m -np http://ligman.me/ZZh7Ts | |
| wget –trust-server-names -m -np http://ligman.me/14HcD5O | |
| wget –trust-server-names -m -np http://ligman.me/17UHSNJ | |
| wget –trust-server-names -m -np http://ligman.me/19LEPIz | |
| wget –trust-server-names -m -np http://ligman.me/11VIxdB | |
| wget –trust-server-names -m -np http://ligman.me/12FObmf | |
| wget –trust-server-names -m -np http://ligman.me/11HXnjD | |
| wget –trust-server-names -m -np http://ligman.me/14fCxLS | |
| wget –trust-server-names -m -np http://ligman.me/16CkUI4 | |
| wget –trust-server-names -m -np http://ligman.me/17VqB79 | |
| wget –trust-server-names -m -np http://ligman.me/13XRfqr | |
| wget –trust-server-names -m -np http://ligman.me/19fCnqV | |
| wget –trust-server-names -m -np http://ligman.me/11WvSqL | |
| wget –trust-server-names -m -np http://ligman.me/1002Upx | |
| wget –trust-server-names -m -np http://ligman.me/14HMJ1Q | |
| wget –trust-server-names -m -np http://ligman.me/10ttQ3n | |
| wget –trust-server-names -m -np http://ligman.me/15fRBI9 | |
| wget –trust-server-names -m -np http://ligman.me/19fDuqE | |
| wget –trust-server-names -m -np http://ligman.me/11IMDlh | |
| wget –trust-server-names -m -np http://ligman.me/10tu5eD | |
| wget –trust-server-names -m -np http://ligman.me/128NAD6 | |
| wget –trust-server-names -m -np http://ligman.me/1bRgXzV | |
| wget –trust-server-names -m -np http://ligman.me/14givRo | |
| wget –trust-server-names -m -np http://ligman.me/18VNatF | |
| wget –trust-server-names -m -np http://ligman.me/128Ogso | |
| wget –trust-server-names -m -np http://ligman.me/13Qbl7k | |
| wget –trust-server-names -m -np http://ligman.me/10tuWvL | |
| wget –trust-server-names -m -np http://ligman.me/16dFAWc | |
| wget –trust-server-names -m -np http://ligman.me/11lkViX | |
| wget –trust-server-names -m -np http://ligman.me/1bRhVMn | |
| wget –trust-server-names -m -np http://ligman.me/14HOjki | |
| wget –trust-server-names -m -np http://ligman.me/1bRiXbc | |
| wget –trust-server-names -m -np http://ligman.me/13QcfRi | |
| wget –trust-server-names -m -np http://ligman.me/16E4lf4 | |
| wget –trust-server-names -m -np http://ligman.me/1005lbB | |
| wget –trust-server-names -m -np http://ligman.me/14HOxb2 | |
| wget –trust-server-names -m -np http://ligman.me/16E6G9L | |
| wget –trust-server-names -m -np http://ligman.me/14gkBRc | |
| wget –trust-server-names -m -np http://ligman.me/1006fEV | |
| wget –trust-server-names -m -np http://ligman.me/16dHXZ9 | |
| wget –trust-server-names -m -np http://ligman.me/13QdHDb | |
| wget –trust-server-names -m -np http://ligman.me/11IQ8bd | |
| wget –trust-server-names -m -np http://ligman.me/17jgPfG | |
| wget –trust-server-names -m -np http://ligman.me/15fXTHQ | |
| wget –trust-server-names -m -np http://ligman.me/11vx5Cy | |
| wget –trust-server-names -m -np http://ligman.me/N1JiHO | |
| wget –trust-server-names -m -np http://ligman.me/OudHlO | |
| wget –trust-server-names -m -np http://ligman.me/OudJdr | |
| wget –trust-server-names -m -np http://ligman.me/N1I2o4 | |
| wget –trust-server-names -m -np http://ligman.me/Oue0NG | |
| wget –trust-server-names -m -np http://ligman.me/Oue2oE | |
| wget –trust-server-names -m -np http://ligman.me/N1HQW0 | |
| wget –trust-server-names -m -np http://ligman.me/Ouebsh | |
| wget –trust-server-names -m -np http://ligman.me/OuecfK | |
| wget –trust-server-names -m -np http://ligman.me/N1Ienp | |
| wget –trust-server-names -m -np http://ligman.me/OuelQu | |
| wget –trust-server-names -m -np http://ligman.me/OueoMd | |
| wget –trust-server-names -m -np http://ligman.me/N1J8A8 | |
| wget –trust-server-names -m -np http://ligman.me/OueFPb | |
| wget –trust-server-names -m -np http://ligman.me/OueIKU | |
| wget –trust-server-names -m -np http://ligman.me/N1I935 | |
| wget –trust-server-names -m -np http://ligman.me/OueUd4 | |
| wget –trust-server-names -m -np http://ligman.me/OueVxy | |
| wget –trust-server-names -m -np http://ligman.me/N1HMW7 | |
| wget –trust-server-names -m -np http://ligman.me/Ouf6sO | |
| wget –trust-server-names -m -np http://ligman.me/Ouf9og | |
| wget –trust-server-names -m -np http://ligman.me/N1Jo27 | |
| wget –trust-server-names -m -np http://ligman.me/OufgQN | |
| wget –trust-server-names -m -np http://ligman.me/OufkQs | |
| wget –trust-server-names -m -np http://ligman.me/N1HEpM | |
| wget –trust-server-names -m -np http://ligman.me/Oufwzg | |
| wget –trust-server-names -m -np http://ligman.me/OufCXN | |
| wget –trust-server-names -m -np http://ligman.me/N1JfvI | |
| wget –trust-server-names -m -np http://ligman.me/OufRSs | |
| wget –trust-server-names -m -np http://ligman.me/OufVlq | |
| wget –trust-server-names -m -np http://ligman.me/N1HX3Q | |
| wget –trust-server-names -m -np http://ligman.me/Oug5Jl | |
| wget –trust-server-names -m -np http://ligman.me/Oug74a | |
| wget –trust-server-names -m -np http://ligman.me/1H1Exty | |
| wget –trust-server-names -m -np http://ligman.me/1S1f34H | |
| wget –trust-server-names -m -np http://ligman.me/1HGqihD | |
| wget –trust-server-names -m -np http://ligman.me/1G2ccS5 | |
| wget –trust-server-names -m -np http://ligman.me/1ffeiJo | |
| wget –trust-server-names -m -np http://ligman.me/1NKjUqp | |
| wget –trust-server-names -m -np http://ligman.me/1KEShAt | |
| wget –trust-server-names -m -np http://ligman.me/1S1i4C0 | |
| wget –trust-server-names -m -np http://ligman.me/1ReR3Qq | |
| wget –trust-server-names -m -np http://ligman.me/1dGxnSW | |
| wget –trust-server-names -m -np http://ligman.me/1IZCarE | |
| wget –trust-server-names -m -np http://ligman.me/1H2Bq3J | |
| wget –trust-server-names -m -np http://ligman.me/1Rf7BaZ | |
| wget –trust-server-names -m -np http://ligman.me/1LRIveQ | |
| wget –trust-server-names -m -np http://ligman.me/1dGxEW7 | |
| wget –trust-server-names -m -np http://ligman.me/1omCrM6 | |
| wget –trust-server-names -m -np http://ligman.me/1j5aDhH | |
| wget –trust-server-names -m -np http://ligman.me/1n3mkVY | |
| wget –trust-server-names -m -np http://ligman.me/1n3mAUZ | |
| wget –trust-server-names -m -np http://ligman.me/1vKOGot | |
| wget –trust-server-names -m -np http://ligman.me/1H7bxTv | |
| wget –trust-server-names -m -np http://ligman.me/1G0DEjb | |
| wget –trust-server-names -m -np http://ligman.me/29pbiLY | |
| wget –trust-server-names -m -np http://ligman.me/29dlTVV | |
| wget –trust-server-names -m -np http://ligman.me/29rOYz9 | |
| wget –trust-server-names -m -np http://ligman.me/29ie2rq | |
| wget –trust-server-names -m -np http://ligman.me/29fQN5c | |
| wget –trust-server-names -m -np http://ligman.me/29idEct | |
| wget –trust-server-names -m -np http://ligman.me/29nevuE | |
| wget –trust-server-names -m -np http://ligman.me/29olaWI | |
| wget –trust-server-names -m -np http://ligman.me/29pz4Im | |
| wget –trust-server-names -m -np http://ligman.me/29fQRlQ | |
| wget –trust-server-names -m -np http://ligman.me/29hzPzU | |
| wget –trust-server-names -m -np http://ligman.me/29rON6X | |
| wget –trust-server-names -m -np http://ligman.me/29cumbH | |
| wget –trust-server-names -m -np http://ligman.me/29cv1JW | |
| wget –trust-server-names -m -np http://ligman.me/29dmh6L | |
| wget –trust-server-names -m -np http://ligman.me/29dfUkt | |
| wget –trust-server-names -m -np http://ligman.me/1giniO7 | |
| wget –trust-server-names -m -np http://ligman.me/29H7K5O | |
| wget –trust-server-names -m -np http://ligman.me/1qbEeVc | |
| wget –trust-server-names -m -np http://ligman.me/1ewwcq6 | |
| wget –trust-server-names -m -np http://ligman.me/1H1MFKr | |
| wget –trust-server-names -m -np http://ligman.me/1pxniH4 | |
| wget –trust-server-names -m -np http://ligman.me/1dG2ZZ9 | |
| wget –trust-server-names -m -np http://ligman.me/29v9igV | |
| wget –trust-server-names -m -np http://ligman.me/29hofVk | |
| wget –trust-server-names -m -np http://ligman.me/29idcee | |
| wget –trust-server-names -m -np http://ligman.me/29rOvx0 | |
| wget –trust-server-names -m -np http://ligman.me/29ctkki | |
| wget –trust-server-names -m -np http://ligman.me/29okalt | |
| wget –trust-server-names -m -np http://ligman.me/29i2CEe | |
| wget –trust-server-names -m -np http://ligman.me/29FT71n | |
| wget –trust-server-names -m -np http://ligman.me/29NBSj1 | |
| wget –trust-server-names -m -np http://ligman.me/29H3O3o | |
| wget –trust-server-names -m -np http://ligman.me/29OHLKa | |
| wget –trust-server-names -m -np http://ligman.me/29uHKKV |
Posted in *nix, .NET, Development, Office, Power User, Software Development, wget, Windows | 2 Comments »
Posted by jpluimers on 2016/12/21
Some of the [Wayback] Ken Thompson – Wikiquote entries come from a great [Wayback] 1983 ACM Turing Award Acceptance Lecture [Wayback] “Reflections on Trusting Trust”.
That lecture used to be on http://cm.bell-labs.com/who/ken/trust.html
But it isn’t, and was not in the WayBack machine and neither in the Google Cache [Archive.is] because of the [Wayback/Archive.is] robots.txt. Historic link rot galore!
Edit 20210728: by now it is in the Wayback machine again; the earliest archived copy is from 2001, it also shows that as of april 2015 it is gone from the bell labs server.
The lecture is about [Wayback] compiler viruses and viruses actually did this at least a few times: Wayback: Delphi in 2009 and to [Wayback] XCode in 2015.
A few nice links from [Wayback] ACM Classic: Reflections on Trusting Trust – Google Groups though:
And archived versions of (I hope accurate) copies of the article:
Finally I found a PDF copy of the original ACM prints that Greg Ganger of Electrical and Computer Engineering at Carnegie Mellon University has online. It’s archived too.
–jeroen
Further reading:
Posted in *nix, Conference Topics, Conferences, Delphi, Delphi 4, Delphi 5, Delphi 6, Delphi 7, Development, Event, Fun, Internet, link rot, Power User, Quotes, Software Development, T-Shirt quotes, WWW - the World Wide Web of information, xCode/Mac/iPad/iPhone/iOS/cocoa | Leave a Comment »