Readit News logoReadit News
lostdog · 3 years ago
The greatest part of this project is that if you ever get sued for trademark infringement, you can force their lawyers to have to explain why anyone could possibly confuse the product of Comcast Corp. with making your internet as flakey and slow as possible.
unsignedint · 3 years ago
To be honest, when I looked at this title, I thought Comcast made a tool and publicized the tool to simulate suboptimal network...
Hydraulix989 · 3 years ago
This is the type of confusion trademark law seeks to protect against.
omarhaneef · 3 years ago
Me too!

And my second brief thought was: maybe they forgot to turn it off for me?

Wish I was kidding.

spacemanmatt · 3 years ago
Nah, this is for people who don't already have Comcast.
kodah · 3 years ago
There's an old paper on that networking, by design, is not reliable or efficient - which is more cogent than ever in large scale distributed systems. What Comcast would cite would likely be that, so I doubt it would reveal the quiet part said out loud about the reliability of Comcast's services.

A couple citations I liked:

https://queue.acm.org/detail.cfm?id=2655736

https://blog.acolyer.org/2014/12/18/the-network-is-reliable/

mh- · 3 years ago
> cogent

No, comcast. :)

Jokes aside, that paper is very worth reading. And HN readers will recognize one of the authors as the creator of Jepsen, of distributed database testing fame.

versale · 3 years ago
On the other hand projects named this way are not easily googleable.
omoikane · 3 years ago
Currently it's the top result for "comcast network tool", ranked above comcast's own github page.

I recall at least one other project with this kind of naming sense: https://github.com/auchenberg/volkswagen

which was named after https://en.wikipedia.org/wiki/Volkswagen_emissions_scandal

and is currently the top result for "volkswagen test library".

the_biot · 3 years ago
Not really, they just need to point at the trademark registration. There is nothing to explain or be embarrassed about.
perbu · 3 years ago
Trademarks are supposed to be consumer protection regulation. They aren't there to protect the corporations. If I make some brown goo and call it "Pepsi" then Pepsico can sue me because I confuse their customers and not because this will cause losses for Pepsico.

At least, this was the original intention. In today's more corporation-friendly world, more emphasis is being put on the corporations interests unfortunately.

sschueller · 3 years ago
Did they trademark the use of the mark for "simulating a bad network". I don't think so.
encryptluks2 · 3 years ago
Simple, they already know Comcast is synonymous with flakey slow Internet and shitty customer service. But they already paid off congress and know there is nothing you can do about it.
DonHopkins · 3 years ago
https://www.youtube.com/watch?v=CHgUN_95UAw

"So the next time you complain about your phone service, why don't you try using two Dixie Cups with a string? We don't care. We don't have to. We're the phone company." -Lilly Tomlin as Ernestine

karmakaze · 3 years ago
Well Canadian Tire Corp tried to claim ownership of the domain crappytire.com and lost. Looks like the domain was eventually bought out.
DonHopkins · 3 years ago
If only Comcast customers had a way of simulating non-shitty network connections...
taf2 · 3 years ago
From docs it looks like you can turn off the shitty network connection by executing

comcast --stop

whateveracct · 3 years ago
You could also rebrand this program to comcast-simulator lmao
daviddever23box · 3 years ago
Grinning from ear to ear on that point...!
heavyset_go · 3 years ago
Sounds expensive.

Dead Comment

TaylorAlexander · 3 years ago
Tangent but I was always annoyed at how poorly google products work offline. One time I was using google maps to navigate to a remote address. Once I got close to the address google maps crashed and I re-opened the app. I had no cellular service. The app remembered the actual map data but did not remember the address I had just typed in to the program 15 minutes earlier. I had to guess what street address I was heading to! Why they designed the app to store all search history exclusively in the cloud and not keep a local copy is beyond me, but I presume when working at google they always have an excellent connection and hadn’t thought of what would happen if a user lost service. Being able to at least see the search history would have saved me some grief!
mh- · 3 years ago
I've experienced that same behavior too. But I also happen to know that, at least in the earlier days of android, they had sophisticated labs available for emulating poor network conditions and software for spoofing GPS on-device in the lab.

Which just makes it more frustrating.

coryrc · 3 years ago
> Why they designed the app to store all search history exclusively in the cloud and not keep a local copy is beyond me

It used to. It was intentionally removed. I say this as a customer who read the update notes, not as an employee of Google.

I'll let you guess why they did. I have my opinion why and it is not flattering to the company, to say the least.

lelandfe · 3 years ago
https://www.cnn.com/2019/07/22/tech/google-street-view-priva...

Hey, who remembers Street View cars collecting SSIDs...

Deleted Comment

lostgame · 3 years ago
For all the hate it gets, I can confirm that Apple Maps does not exhibit this behaviour, and I also believe Waze doesn’t, as well; though my memory is hazy on that one.

Driving around in Northern Canada, as I am often wont to do with my partner; you’re without cell service at least half the time; and even when you do have cell service - data is very uncommon.

My girlfriend and I ran into this issue twice with Google Maps, tested if Apple Maps exhibited the same behaviour, and since it hadn’t - neither of us have actually used Google Maps since.

This is - of course - iOS-specific advice.

salawat · 3 years ago
Making a tool that retains it's use in isolation from Google and the cloud is antithetical to the SaaS philosophy.
pehtis · 3 years ago
If you are on macOS you can use the "Network Link Conditioner" System Preferences pane that is included with Xcode for the same effect.

You can find that in the Additional Tools for Xcode download, in the Hardware folder.

fredley · 3 years ago
I used to work with someone who would frequently explode on group video calls, usually with the anger directed at a single victim.

I worked out that if it happened to me, I could use the OSX link conditioner (built in to XCode) to degrade the connection realistically. Coming back after he'd finished his tirade with a 'sorry, my internet capped out, could you repeat that' took a lot of the heat out of the situation.

distances · 3 years ago
Sidenote, but I have never ever witnessed someone getting angry at another person in a meeting, remote or in person. I don't even know how I'd react except being flabbergasted at the unprofessionalism.
fredley · 3 years ago
I haven't otherwise, this was quite the experience. Quite soon after the first incident I started planning my exit. Attrition was very high at that company...
mobiledev2014 · 3 years ago
Oh boy, I have. It was the president of the company. I lined up a job and quit so fast
bertil · 3 years ago
I wish more companies cared about making their product accessible with poor connection, but also no connection at all.

Google Maps is probably the most egregious example of that: you are likely to need it outside of your usual Wifi, and possibly where cellular coverage is poor. Why not offer reasonable off-line support? The Apple TV app is confusing too: they offer the option to download shows (like Netflix does) but the feature is essentially unusable.

LAC-Tech · 3 years ago
It's a hard problem.

Offline means you're dealing with conflict detection, resolution, and caching strategies. Do you do multi-master? Have a single remote master but cache commands as a fallback? How do you test your solution?

And if you're dealing with the web, then you have to deal with IndexedDB which can sometimes be nuked by the browser, or have show stopping bugs (looking at you safari). There's also limited capacity compared to severside. Even if you use a library, under the hood they all use IndexedDB - there is no getting away from its limitations.

If anyone's interested in this stuff, I'd love to chat. I'm between contracts and trying to make an old app of mine work offline, lots of fun but also challenging.

More-nitors · 3 years ago
> Offline means you're dealing with conflict detection, resolution, and caching strategies

users of google maps / apple TV don't have to send 'write' operations except for a few features (set-favorite, etc)

grayclhn · 3 years ago
Read-only offline is not a hard problem. Regardless, lots of things are hard problems _the first time it’s solved_ but become easy problems with the right tools and design.
z3t4 · 3 years ago
A naive approach is to have a integer named "version" and a bool named "synced" beside each post/record/row. Then increment version and set synced=false when updating, and synced=true when synced. Or make the data/state immutable and just have the "synced" variable.

A more complicated approach is to have transform operations for state changes, with a version variable, then the version variable is incremented on on a central server each change and decide in which order the transform operations should be applied.

dmd · 3 years ago
I’m real confused about you calling out Google Maps when it has fantastic offline support (which I use all the time).
NavinF · 3 years ago
He’s probably talking about the web version. Under any other interpretation that comment makes no sense.
roflc0ptic · 3 years ago
Maps does let you download areas for offline use. I'd agree that it's non-ideal for long trips, though in practice this has never been a huge problem for me.
tgsovlerkhgsel · 3 years ago
Offline support on Android is excellent. I'd guess most people don't use it offline on a laptop.
seper8 · 3 years ago
Google Maps is literally free and here you are complaining it won't work when you don't have internet... But it will: https://support.google.com/maps/answer/6291838?hl=en&co=GENI...
switchbak · 3 years ago
He was talking about it crashing while navigating and not coming back up properly with no connection. That's a valid concern.

Offline maps are nice too, but this wouldn't have helped him get his navigation route back.

I've experienced many of these issues through the years too. And a dedicated offline navigation program is probably the way to go.

I do think your tone is somewhat unnecessarily dismissive though.

ChrisMarshallNY · 3 years ago
The best way to do this, is minimize the amount of data, going back and forth.

In today's age, with multi-megabyte 4K background videos, and enormous dependency chains, that's a hard sell.

I dealt with it, by writing my own backend, with a fairly optimized API, and consulting it in JIT "bursts."

That’s considered “square,” these days.

adrianople378 · 3 years ago
I use Organic Maps exactly for this reason. Google Maps is too unreliable when cycling and I need an offline solution (also OpenStreetMaps have better coverage of cycling routes than Google does).

https://organicmaps.app/

secondcoming · 3 years ago
HERE maps are downloadable.
bombcar · 3 years ago
HERE is wonderful for international travel - you can download entire countries or subsets thereof, and turn off data roaming and just use GPS. Then you can stick to free wifi.
samatman · 3 years ago
Love the project, likely to use it, and I wish more developers were compelled to use Southeast-Asian-island levels of latency, jitter, and bandwidth, at least once a week while writing websites.

The name is choice, I almost hope you get a nasty letter so you can share it with the rest of us. Hard to search for though...

Might I offer.... Concast?

withinboredom · 3 years ago
There's nothing more annoying than recognizing that some developer wrote their own "timeout logic" when the socket is still transferring data, just very slowly. Pro-tip, don't implement your own timeout logic, just set a timeout on the socket.
RedShift1 · 3 years ago
There's bandwidth and latency simulator in the Chrome devtools, no extra tools needed.
kyrra · 3 years ago
This tool is at the socket level, and used for developing distributed systems. The Chrome dev tool is just to demo the user experience of poor internet. They're very different use cases.
fendy3002 · 3 years ago
ClownCast

Dead Comment

chillax · 3 years ago
There's also toxiproxy - https://github.com/Shopify/toxiproxy
leetrout · 3 years ago
Toxiproxy is fantastic. I wish they supported a full configuration file in JSON or TOML or something but other than that it has been a lifesaver testing websockets.
LgWoodenBadger · 3 years ago
About 15 years or so ago, we looked at buying a hardware appliance that would let you build and simulate virtual networks with all sorts of different characteristics. Packet loss, latency, etc.

We developed software for retail point of sale systems, and some of the stores we had to support had all sorts of awful infrastructure, both inside the store and between the store and the “rest of the world.”

I can’t remember the name, but I believe it was an Israeli company, and the device was programmed/configured through Visio (iirc).

bombcar · 3 years ago
Often with amazingly crappy internet what you want are "one packet wonders" - do everything possible in single packets, so that if one gets through you win.
baruch · 3 years ago
That was Shunra, I worked there for a brief time. It was sold to HP at some point and I don't know what happened to the product afterwards.
awestroke · 3 years ago
It was probably incorporated into HP's consumer printers
luma · 3 years ago
These products were typically known as "WAN emulators" and were pretty commonly used in the exact situation you describe: developing large scale distributed systems that were going to be used over unreliable connections. This functionality is now available in the Linux kernel via netem and is accessible via the `tc` command.