Happy 15th Towel Day.

–jeroen
Posted by jpluimers on 2016/05/25
Happy 15th Towel Day.

–jeroen
Posted in About, Comics, Fun, Personal | Leave a Comment »
Posted by jpluimers on 2016/05/25
There are so many ways to view the last Git commit on the command-line.
On the one hand this shows the versatility of Git. On the other hand there are so many trees in the forrest, that it is hard for people to find how to do simple things.
The one I like most is this:
git show --name-status --oneline
Others:
git log --name-status HEAD^..HEAD
git log -1
git show
git diff
git show --name-status
git log --stat -n 1
–jeroen
Posted in Development, DVCS - Distributed Version Control, git, Source Code Management | Leave a Comment »
Posted by jpluimers on 2016/05/24
The background here was a quick project at a client where many .dproj files were in the same directory, but they suffered from conditional define differences. Which meant that even if they were all using the DEBUG configuration, some defines in the .dproj directories were different therefore poisoning shared .DCU files (as Delphi does not automatically rebuild them when the sources have not changed even though the IDE switched to a new project).
There was no quick possibility to reorganise the project structure (a combination of a version system history being problematic and potentially lots of relative path references in the .dproj and .dpr files could still be broken) so I wanted different “Unit Output Directories” for each project preferably using non-hardcoded project name.
So I tried putting $(PROJECTNAME) in a “Unit Output Directory”. But unlike build-events – where that one has a value – in the Directory it hadn’t.
To cut things short, Uwe Raabe did some spelunking in the .dproj file and found that $(SanitizedProjectName) was recognised so I switched to .\$(Platform)\$(Config)\$(SanitizedProjectName).
Putting it in the OutputDirectory (where your .EXE gets emited) fails for most part. Yes, the .EXE gets put in the right directory. No, the debugger cannot find it as it thinks it needs to use %SanitizedProjectName%. No for TestInsight: it cannot find the EXE either because of the % expansion.
Based on SanitizedProjectName, I did some more spelunking coming with the below list. Remember though:
Only tested for
Win32applications for Delphi XE8
I assembled the list by doing a quick sed on a Delphi XE8 Win32 .dproj file transforming all XML element names to $() form then running it through a uniq like script. After that I added each of them in a “Unit Output Directory” prepended with .\_\ (well I cheated a bit, I did them in groups separated by a back-slash and went back to single items in case of failures. A kind of ‘binary search’).
Ensure the ones you use, are defined before you use them. For example: the definition of SanitizedProjectName need to be in the .dproj file before actually using SanitizedProjectName.
These expand to empty strings:
Posted in Conference Topics, Conferences, Delphi, Delphi XE8, Development, Event, Software Development | 2 Comments »
Posted by jpluimers on 2016/05/24
I now officially hate Microsoft download sites.
I’m trying to fix a friends PC where Windows 10 has screwed up (after he installed, it loads, but the screen turns black without a mouse cursor which indicates the video drivers are likely hosed). There is no F8 boot option in Windows 10 any more so I need media.
https://www.microsoft.com/en-us/software-download/windows10ISO redirects to https://www.microsoft.com/en-us/software-download/windows10 which forces you to download a “Media Creation Tool” that complains I don’t have 8 gigabyte free disk space.
I have. Just not on the C: drive freaking morons!
But https://www.microsoft.com/en-us/software-download/windows10 won’t let me download the ISOs.
Searching around, it looks like I need Win10_1511_1_English_x64.iso or Win10_1511_1_EnglishInternational_x64.iso
Does anyone know how to get them?
–jeroen
Posted in Power User, Windows 10 | 5 Comments »
Posted by jpluimers on 2016/05/24
Interesting: Somfy Smoove Origin RTS Protocol | PushStack a base to start Hacking Somfy.
The Somfy protocol is tricky as it uses rolling keys.
More interesting links:
These are in Dutch, but very interesting as they show how to do reverse engineering and getting it to work hardware wise:
Posted in Arduino, Development, Hardware Development, Hardware Interfacing, Raspberry Pi | Leave a Comment »
Posted by jpluimers on 2016/05/23
Sometimes people give you .msg files saved from Outlook instead of forwarding those mails by e-mail.
Opening a .msg file requires Outlook.
You don’t need to bind Outlook to an e-mail account for this (so you can skip those steps when asked the first time Outlook opens). An Office installation that includes Outlook suffices.
After opening the message:
For some HTML messages, “View Source” is not available. I’m not yet sure why.
–jeroen
via: How can I view the entire source code of an email in Outlook 2010? – Super User
Posted in Office, Office 2010, Office 2013, Office 2016, Outlook, Power User | Leave a Comment »
Posted by jpluimers on 2016/05/23
A message like “Unable to connect to the MKS” usually does not mean you have reached the maximum of 10 connections for a VM.
Usually it means there is some network issue, like a firewall or router misconfiguration.
Port 902 is used (both TCP and UDP) to provide (among others, hence MKS) console connections.
The default MKS port is 902, and you cannot change it.
For vCenter it is even worse as you cannot even go through NAT:
About the only solution is to tunnel through SSH: VMWare vSphere Client Remote Access via SSH Tunnel and redirect ports 443, 902 and 903.
–jeroen
via:
Posted in ESXi5, ESXi5.1, ESXi5.5, ESXi6, Power User, Virtualization, VMware, VMware ESXi | Leave a Comment »
Posted by jpluimers on 2016/05/20
Verily, they did make support for the Internet of Things.
As always, brilliant writing. For instance:
- “But there was also the Youth Faction, who were indeed very young, some being barely in their mid-forties.”
- “Ask a Delphic question, get a Delphic answer” –
Source: The Sons of Kahn and the Witch of Wookey • The Register
via: David Heffernan – Google+
–jeroen
Posted in Delphi, Development, Fun, History, Software Development | Leave a Comment »
Posted by jpluimers on 2016/05/20
Mikrotik have statistics and way more features. Of the not so good features on the TP-LINK ER-5120 multi-WAN router (none of which are mentioned in their documentation), the worst 2 are:
Source: Gigabit Load Balance Broadband Router TL-ER5120 – Welcome to TP-LINK
Source: MikroTik – Forum – Tweakers
RouterBoard RB3011UiAS-RM description. The RB3011 is a new multi port device, our first to be running an ARM architecture CPU for higher performance than ever before. The RB3011 has ten Gigabit ports divided in two switch groups, an SFP cage and for the first time a SuperSpeed full size USB 3.
Source: RouterBoard.com : RB3011UiAS-RM (link has high res images)
Source: RB3011UiAS-RM – MikroTik RouterOS
The CCR1009 will always be faster, even passively cooled: Source: RB3011 Fan Notice compared to CCR 1009 – MikroTik RouterOS. The passively cooled versions run at a lower clock-speed which you can even make lower yourself:Source: CCR1009-8G-1S-1S+PC lower clock – MikroTik RouterOS. On the active cooled CCR1009, you can replace the fans to make them more quiet: Source: CCR1009-8G-1S-1S+ General info & Questions – Page 2 – MikroTik RouterOS
Note the ports in/out the switch groups on the CCR1009: Source: CCR 1009 switch chip menu – MikroTik RouterOS
RouterBoard CCR1009-8G-1S-1S+PC description. Our popular 9-core Cloud Core Router is now available in a new passive cooling enclosure. This CCR1009 unit is equipped with two heat-pipes and a specially designed heat-sink, so its completely silent.
Source: RouterBoard.com : CCR1009-8G-1S-1S+PC
RouterBoard CCR1009-8G-1S-PC description. Our popular 9-core Cloud Core Router is now available in a new passive cooling enclosure. This CCR1009 unit is equipped with two heat-pipes and a specially designed heat-sink, so its completely silent.
Source: RouterBoard.com : CCR1009-8G-1S-PC
Source: Advise: CCR1009-1S-PC – MikroTik RouterOS
Source: CCR1009-8G-1S-1S+ is a BEST ROUTER !!! – MikroTik RouterOS
When the power supply breaks: Source: CCR1009-8G question about part number – MikroTik RouterOS
The actively cooled CCR1009 with lots of pictures and screenshots: Source: CCR1009-8G-1S-1S+ General info & Questions – MikroTik RouterOS
Source: Eigen router achter een XS4ALL-VDSL-aansluiting (2) | Harold Schoemaker
Source: xs4all ftth en Mikrotik router – Google Groups
Heeft iemand van jullie ook ervaring met IPv6 van XS4all met een fritzbox? Ik wil namelijk achter deze fritzbox een mikrotik plaaten en IPv6 door routeert.
Source: IPv6 mikrotik router achter een fritzbox.
Source: [Ervaringen/discussie] MikroTik-apparatuur – Netwerken – GoT
–jeroen
Posted in Internet, MikroTik, Power User, routers | Leave a Comment »
Posted by jpluimers on 2016/05/20
Remember the image on the right? It was the first “corkboard” production server Google used in 1998 (it’s a museum piece now).
From there they were using commodity-class x86 server computers running customized versions of Linux for a “long” time which around 2005 even got their own 12V battery as UPS inside the machine and running 1160 machines in a 1AAA shipping container.
Later whey started using a mix of CPU and GPU increasing the performance per watt and recently went from 12V to 48V and even contributed 48V DC Data Center Rack to Open Compute.
In the mean time, Tensor Flow and AI got even more important for Google and during the Google I/O 2016 keynote, they revealed yet another step: TPU chips especially made for TensorFlow providing even better performance per watt for machine learning than GPU. The TPUs are not FPGAs (popular for instance when mining BitCoins), but ASICs that perform orders of magnitude better.
So in about 18 years, Google moved from cleverly assembled commodity hardware to highly specialised custom chips.
Exciting times are ahead of us. I’m really looking forward to the next steps.
–jeroen
Sources:
Posted in Cloud, Google, History, Infrastructure, Power User | Leave a Comment »