Annoyances

“Can I get someone who speaks English?”
I do believe I am speaking in English. What can I do for you?

Just because you’re calling customer service doesn’t mean I’m outside the US.

“I want to speak with a manager”
Sure thing. Can I have your order so I can tell my manager what you’re calling about?
“No I want a manager now because I don’t want to talk to you”
Unless I obtain this information I cannot transfer you to a manager. Anything else?

Give me something so I can help you. Otherwise I’ll tell you to fuck off.

“I want a cut”
We all want things. Do one more order and you’ll get your cut.
“NO I WANT A CUT NOW”
You already accepted the order. Finish it and you get cut. Otherwise you get written up.

These people are the ones doing the work, but really, most of them are idiots.

“Your menu is out of date and all the prices are wrong”
I can fix the prices on this order, have you sent your menu in?
“WE DON’T HAVE TIME FOR THAT”
Do. Not. Yell. At. Me.

There’s a reason why people don’t order from you anymore, dear restaurant owner.

Not getting paid enough for this

At work we use the G Suite for most everything and it works okay — for the most part. The problem is that we’re starting to have so much documentation that is just frozen in a spreadsheet or document that is just… out of sight, where no one pays it attention ever again.

I’m having a devil of a time convincing someone, anyone that having something other than the mess of documents we have shared between all of us is something worth having. Our current system simply doesn’t allow for detailed notes to be kept on all the parties involved for what we do: The sellers, the customers, the employees, so we end up just having the knowledge be stored on someone’s mind, where it can’t be efficiently shared.

And when that person leaves the knowledge is lost.

So now I’m wracking my brains to figure something out that we can all share because what we currently have is simply not working. A wiki is starting to look like the best idea but I can’t simply go and run it off a server somewhere. I want it to be at least be allowed, because I don’t want to lose my job trying to improve the company. It is confidential information, after all.

I’ve seen people lose their jobs for less than that.

Who’d have thought? 

@morganmpage: Ten years ago I would not have predicted that geek culture would plunge the world into political chaos.

I stopped feeling like one of these people long ago… Not because I grew out of gaming culture, but because I noticed those tendencies and could not put a name to them.

That and the simple lack of available time for gaming. Work is how you afford to have gaming time. The entire thread is so worth consideration. 

Coincidence: Software development

This post has been doing the rounds lately. I didn’t pay it much mind, filing it under “at last one developer sees the wrong of his ways.”

I read this, by Cory Doctorow, a few days later. It’s fiction but you betcha something like this will happen. It already may have but if so it has been kept quiet.

Then I found this article on Business Insider.

So yeah, software developers are definitely making the world a worse place and no amount of ethics will fix it. What a developer in the US doesn’t want to do, the company will find someone in Asia or Eastern Europe to write. Market dynamics as applied to ethics.

IoT, anyone?

Extra! Extra! Fake news are real! Extra

In addition to doing more to weed out lies and false propaganda, Facebook could tweak its algorithm so that it does less to reinforce users’ existing beliefs, and more to present factual information. This may seem difficult, but perhaps the Silicon Valley billionaires who helped create this problem should take it on before setting out to colonize Mars.

Source: Mark Zuckerberg Is in Denial – The New York Times

El Zuckerberto wants all the money he can have so he can be on the third ship to Mars. The first one made it there, the second one brought all the toys, and the third is for the rich people who want off the planet.

At least on twitter it’s easy to look up and see what the others are talking about, even while mired in abuse.

My job is managing being interrupted

Last year I turned off all my notifications. I stopped booking meetings. I started living asynchronously.

Source: Live asynchronously.

My job (and that of my coworkers) is being constantly stopped from finishing the task we are working on. I’m told that I’m really, really good at it, but I only got that way by working in the kitchen, where the job is, again, being interrupted.

But the cognitive load is immense, and intense. I often get home feeling more tired from working at the office job for 6 hours than from working in the kitchen for 12 hours.

And no, I don’t get breaks at either job unless it’s slow.

You’re just having a taco de ojo at this point

Services like Tinder and Hinge are no longer shiny new toys, and some users are starting to find them more frustrating than fun.

Source: The Rise of Dating-App Fatigue – The Atlantic

In my case it’s not app fatigue, it’s more of a life fatigue. My work schedule doesn’t help any, as the kind of gal I like usually has a work schedule that is exactly opposite mine.

It is one of the things that killed my last relationship, after all. The upkeep is just so, so hard.

Someone get me her book?

Since we seem to agree on the fact that Trump is a garbage monster, there’s no need to even go there. Instead, let’s talk about Hillary. First, allow me to reframe your assertion that she is monumentally corrupt. No, no. The system is monumentally corrupt, and Hillary is masterful at gaming it. I respect that. I don’t see it as a character flaw, because despite what Fox News would have you believe, Hillary really does have a conscience. She is a dyed-in-the-wool progressive who still manages to get shit done in this grotesque plutocracy of ours.

Source: Dear Coquette

Coquette is the best.

This is really scary stuff

Source: The Short Life of a Vulnerable DVR Connected to the Internet – SANS Internet Storm Center

I’ve set up DVRs and the UX/UI on most of them is appalling, along with the entire setup and configuration process. Then to find out the moment you connect them to your network they just become another attack vector, one that cannot be easily closed off.

These are pretty pricey devices that I believe can be replaced with a Raspberry Pi to obtain more flexibility and better recording quality. It’s just the software that’s needed.

No money for all these things!

Source: FIXED: Xbox One losing TV signal error message with DirectTV – Scott Hanselman

This is why piracy wins. You buy all the expensive toys, then you run into issues that require you to buy even more crap that consumes more power that then you have to remember to manage.

You know what doesn’t fail? Some HD or 4K torrent that you can just push to any display over any physical media. Plug and play, as it were. Funciona aqui, en China, y en la chingada.

No additional devices required. No matter where you are.

You cannot beat that.

Without it, you’re a non-citizen.

Nor do I want to add to the refugee crisis in your countries, God forbid. I am lucky to have my passport. Could you please return it to me? Thank you.

Source: I Am Lucky to Have a Syrian Passport · Global Voices

You know what’s even riskier than traveling without a passport? Traveling without one.

Worse, being denied your citizenship outside of the country that provided you with it.

You become a non-entity.

Windows 10 and 4K

The simple answer:

Do not buy 4K monitors until Windows 10 fixes all its issues with them, which might be years from now.

Much blame lies with 3rd party developers not caring about how their software looks on HiDPI displays — looking at you, Notepad++ — but Microsoft itself has not decided on how they want to handle these displays in a definitive way.

When Apple tells developers it’s their way or the highway, they are lauded for it. When Microsoft does the same, they are dragged through the mud for it. In this instance I’m willing to give Microsoft the benefit of the doubt.

Hell, not even Google has figured out how to make Chrome look pretty in 4k. That’s how bad the situation is.

Thinking Tools: September 2016

Gordon does them every now and then, so I’m going to start doing them too:

  • This site, which I am meaning to most more often to (and not just pictures like I did before).
  • I guess proof is what looks to become a series of posts on my laptop being my router. I’ve posted about how I feel, so it’s progress.

  • Twitter, via Hotot+ on Chrome for the desktop, and Fenix on Android.
  • The problem is that with Twitter Co. being assholes to their devs, Hotot+ has had its API key suspended a few times and Fenix is not really in active development any more after running out of app tokens. Given the current news about Twitter Co. looking to sell itself I wonder what will replace it for me. It’s basically become my social life on the internet, since I’m not really active on IRC anymore. I am on facebook mostly for family.

  • Notepad++
  • Jot down pretty much anything that pops into my mind. Sometimes I do use it to edit blog posts for usually the text mode WordPress editor suffices. I’ve tried to do a diary of sorts in it but it’s harder than I thought it’d be.

  • Franz
  • I was using the Common Hangouts Chrome extension but Google went and fucked around with Hangouts again, so it stopped working. Pidgin is basically AWOL. Trillian is crap. So after much consideration I gave in and installed it. It looks like crap on my 4k display and Hangouts still has the stupid new interface, but at least it lets me have a single window for what little messaging I do these days.

  • KeePass
  • Been using it for years now. Probably won’t stop ever. Everything wants/needs its own password now.

    The most pressing need that I have for myself is a replacement for Tiddlywiki that I can run from this server; it’d probably require me to configure HTTPS but that’s another project worth learning. The main issue then becomes choosing an appropriate wiki that is about as flexible as tiddlywiki *without* requiring the use of any extensions on the browser. Running this from the server would also allow me to update it from any mobile devices. Tiddlywiki is decidedly desktop software; the clients available for on Android all suck.

    This is why it’s so pressing for me. I need something that lets me document my life so I can offload stuff from wetware onto software. I’ll keep trying using simple text for now… but I think my mind simply works better using a wiki paradigm.

    I really do wonder what Twitter will turn into once it doesn’t belong to itself, though.

A Debian Wifi Router: Kernel tuning

So it turns out that if you go with the default kernel parameters on the device you won’t get much throughput. I’m currently paying my ISP for a 25Mbit/s pipe both ways, which is bloody awesome.

I was having problems with throughput and network jitter, though. I was able to have a fast connection from my devices to the router and the router had the full connection available to itself; problems were the router was not able to make the full connection bandwidth available to its clients and the bandwidth would go from 25Mbit/s all the way down to 5Mbit/s all the time.

This is really damn annoying when you’re putting in a good match on Unreal Tournament, let me tell you.

Thinking it could be something related to hostapd I played around with a few more settings but nothing really made a difference. I’m having problems with reception and throughput in my bedroom but that’s for another post, I guess. Suffice to say that with a direct line of sight to the router everything works about as expected.

So it wasn’t hostapd. Played around with iwconfig and iw but neither made much of a difference. That left the network interfaces themselves and the kernel.

Dug around and found plenty of links and articles on what settings to adjust and how to adjust them but all of them are geared towards servers of some sort. There isn’t much information that a home/office IT guy would be able to use for tuning the kernel for bandwidths of less than 100Mbit/s, which is what I’m attempting to do here. The most popular post (which I basically copied into my configuration) is using settings for 1Gbit/s connections that I then changed with the one entry that matched from the Ars Technica post.

Here’s sysctl.conf as I have it right now:

# /etc/sysctl.conf - Configuration file for setting system variables
# See /etc/sysctl.d/ for additional system variables.
# See sysctl.conf (5) for information.
#

#kernel.domainname = example.com

# Uncomment the following to stop low-level messages on console
#kernel.printk = 3 4 1 3

##############################################################3
# Functions previously found in netbase
#

# Uncomment the next two lines to enable Spoof protection (reverse-path filter)
# Turn on Source Address Verification in all interfaces to
# prevent some spoofing attacks
#net.ipv4.conf.default.rp_filter=1
#net.ipv4.conf.all.rp_filter=1

# Uncomment the next line to enable TCP/IP SYN cookies
# See http://lwn.net/Articles/277146/
# Note: This may impact IPv6 TCP sessions too
#net.ipv4.tcp_syncookies=1

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

# Uncomment the next line to enable packet forwarding for IPv6
#  Enabling this option disables Stateless Address Autoconfiguration
#  based on Router Advertisements for this host
#net.ipv6.conf.all.forwarding=1


###################################################################
# Additional settings - these settings can improve the network
# security of the host and prevent against some network attacks
# including spoofing attacks and man in the middle attacks through
# redirection. Some network environments, however, require that these
# settings are disabled so review and enable them as needed.
#
# Do not accept ICMP redirects (prevent MITM attacks)
#net.ipv4.conf.all.accept_redirects = 0
#net.ipv6.conf.all.accept_redirects = 0
# _or_
# Accept ICMP redirects only for gateways listed in our default
# gateway list (enabled by default)
# net.ipv4.conf.all.secure_redirects = 1
#
# Do not send ICMP redirects (we are not a router)
#net.ipv4.conf.all.send_redirects = 0
#
# Do not accept IP source route packets (we are not a router)
#net.ipv4.conf.all.accept_source_route = 0
#net.ipv6.conf.all.accept_source_route = 0
#
# Log Martian Packets
#net.ipv4.conf.all.log_martians = 1
#
# Kernel parameter adjustments
# 2016/09/12 02:59:32: http://www.nateware.com/linux-network-tuning-for-2013.html
# http://arstechnica.com/gadgets/2016/04/the-ars-guide-to-building-a-linux-router-from-scratch/
#
kernel.sem = 250 256000 100 1024

# Increase system file descriptor limit
 fs.file-max = 100000
#
# # Discourage Linux from swapping idle processes to disk (default = 60)
 vm.swappiness = 10
#
# # Increase ephermeral IP ports
 net.ipv4.ip_local_port_range = 10000 65000
#
# Increase Linux autotuning TCP buffer limits
# Set max to 16MB for 1GE and 32M (33554432) or 54M (56623104) for 10GE
# Don't set tcp_mem itself! Let the kernel scale it based on RAM.
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_max = 4194304
net.core.rmem_default = 4194304
net.core.wmem_default = 4194304
net.core.optmem_max = 40960
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 65536 4194304

# Make room for more TIME_WAIT sockets due to more clients,
# and allow them to be reused if we run out of sockets
# Also increase the max packet backlog
net.core.netdev_max_backlog = 25000
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_max_tw_buckets = 200000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 10

# Disable TCP slow start on idle connections
net.ipv4.tcp_slow_start_after_idle = 0

# If your servers talk UDP, also up these limits
net.ipv4.udp_rmem_min = 8192
net.ipv4.udp_wmem_min = 8192

# Disable source routing and redirects
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.accept_source_route = 0

# Log packets with impossible addresses for security
net.ipv4.conf.all.log_martians = 1

Everything in here I’m sure can be tuned further and the file itself is so damn ugly to look at but for now at least I have a starting point I can use.

All this tomfoolery is turning me into a network wonk.

I really don’t want to be writing this. Well no, that’s not true. I don’t want to have to write this, but sex education is lacking as it is and far too many people are being rather lackadaisical about the whole thing. Because I can’t in good conscience let condoms which can’t reliably condom be on the market […]

Source: A Pox On Your Box: The Problem of LELO Hex – Lorax Of Sex

It’s makes all the difference whether something fails silently or something fails and explodes in your face.

For most programming code written out there, you want some indication that it failed (that is, it sets off a small explosion or it sets off a big explosion) so you can know something is wrong and can fix it. When something fails silently you don’t even know there’s a problem until something happens that you literally cannot fix. Like your backups silently failing until you need to recover something… to find the information has been lost. Forever.

In the case of this condom design, the consequences of it failing silently are literally of life and death important:

  • You could get an STI and not know.
  • You would then become one of those asshole people that don’t even bother to get tested for STIs because “it could never happen” to them.

  • You could get pregnant, or get someone pregnant.
  • When a regular condom fails you know it failed and you can take measures. In this case the only alternative will be to have the baby, or have an abortion.

These things are important and fact people are falling for the hype means sex education is simply not keeping up with the reality of the world.