Of course I have to remember that they are blocked on that card, should I ever need an account again in the future.
238 karma · joined August 30, 2013
Of course I have to remember that they are blocked on that card, should I ever need an account again in the future.
There is no way I'm bringing these up to her, though. For my own self-preservation. Over the last few months we've had a long-running argument about the operation of her Dexcom glucose monitor -- she's been convinced that it requires a continuous, active internet signal to function. Her proof was that every time she went into the basement at work, her Dexcom stopped reporting her glucose levels. When she comes upstairs, then she suddenly gets notified that she's been spiking or dipping for the last hour.
Everything under the sun, included the sun (remember that solar flare the other week? Yeah that was also pointed at as a problem) has been blamed for her Dexcom not informing her of dips and spikes. Yesterday evening her new Omnipod app told her to stop enabling Airplane Mode or BatterySaver, as these toggles interrupt bluetooth communications. She's been turning those on every time she goes into the basement at work to save battery.
It's just best if nothing I have touched or created is involved in any way.
Developing software on the average potato device? Hell no. What a waste of time.
About 6 months ago she suddenly started dropping weight. Extreme exhaustion (winded after going up a flight of stairs), dropped 30 pounds in two months, she was starting to get skeletal. Still not being active with her healthcare, but when she went under 110lbs for the first time since she was 14, she finally found the motivation she needed to get proactive and quickly found a better team of doctors who diagnosed her with Type 1 and put her on Insulin immediately.
Today we're putting her 2nd Omnipod on her for insulin delivery. She should get a closed loop system soon, I guess the iPhone support for her Omnipod+Dexcom combo is still going through FDA approval. Her new team says she's lucky to be alive at all. They've been going through her extensive medical history, pointing at occasions when she was hospitalized during her menses and saying "here you were going through diabetic ketoacidosis, that's why you were vomiting constantly", "every evening you're going critically low, that's why family thought you were a closet alcoholic", and "on average during the day your blood glucose is far, far too high, that's why you drink and piss gallons of water per day but are never sated".
So... I guess yes you can get lucky and survive, but with symptoms strong enough that it _should_ be caught.
Developers can be as f'n messy as they want on their branches, no one cares because it never hits main.
Just curious, why do you think a Dr. should be involved at all?
You just ... decided to enroll? You, as a child, can do that? I didn't obtain that kind of personal agency until my early 20's. My late teens were a confusing time of basically waiting for any kind of adult to tell me what I was allowed to do.
You didn't like it and ... just went back to a different school? That's something that you can do?
You just... dropped out? You had that option?
My experience is the polar opposite. My mom kept a vice grip on everything we learned. Bringing up wanting to go to Public School resulted in literal months of venom and self-victimization (aka: "I guess you hate how I sacrificed my body to bring you into this world ,and I sacrificed my dreams to stay here and raise good Christian children"), various punishments, and bible verse memorization assignments. Books were excised from the house if there was a hint of independence within. My mom literally took away a book I was reading about an orphan boy and his love of dirt-bike racing because on one page, the boy's foster parents asked him if he would attend church with them, he politely declined, and the foster parents accepted that. My Mom told me she "didn't want me thinking that was OK" when she took it away.
To me, being accepting of home-schooling is in the same camp as ditching all CI tooling because "every developer's style is valid and has its benefits". Accepting home-schooling means accepting that the lowest common denominator is good enough to teach the next generation.
> Still, many survivors of unschooling, and home schooling, aren’t buying it. The projection of normalcy, and even success, has long been part of the home-schooling toolkit.
> “This is exactly how my mother was back in the 90s,” says Tyler. “For her, it was touring support groups and conferences and whatnot, to brag about how happy, well-adjusted and educated her children were, while neglecting to mention the suicide attempts, running away, screaming and tears that permeated daily life.”
This maps to my experience being Homeschooled. To this day my Mom refuses to acknowledge that every one of her children needed remedial education the moment we left the home, from basic math & composition down to just plain old human interaction. All 5 of us have been "that weird kid" well into our 20's, until we caught up enough to mask our history.
To you and I there is a difference between tracking and metrics. To everyone else there is none. All my Mom knows is that the software dialed home. It is impossible to verify what it said to the mothership. The popup promised "Metrics only!" but then Little Snitch lit up like a Christmas tree 4 times! It's stealing my info!
How does the consumer know that the "metrics" didn't include home IP, OS version, and god knows whatever else? Again, metrics are a subset of data. Even the internet request to ship a fully anonymized usage info like "saved_files: 10, opened_files: 11" metric set contains Gobs and Gobs of identifiable information on and around the request itself. Does the company stash inbound request data for troubleshooting? That's fucking tracking bro. Your data dog instance is chock-full of tracking info.
It is not reasonable to expect end-users to be able to verify the claim that "only metrics are tracked". It is safer for everyone to assume this is a bald-faced lie, because at the end of the day it is impossible to verify to any level of certainty.
And there's no way for a user to validate that any tracking is indeed anonymous. The technical level needed to asses this is just... out of reach for everyone (the quantity of people who can properly verify this is small enough we can safely ignore it when speaking generally and use the coloquialism Everyone)
Within months I couldn't imagine working without it.
At the time there wasn't a discussion happening regarding how to restore the lost menu items. Just a useless commit nuking things I relied on every day. I suddenly felt very.... violated? Distrustful? I know that titoBouzout owes me nothing, SideBarEnhancements is free after all, but I was reminded of the constant issues NPM has with maintaining a chain of trust. This is my core toolset, how I make my living, and I have no tolerance for things just vanishing without a reason.
So I've switched to Zed. Overall it's nice. It's as responsive as Sublime was, the "feel" is there. It has decent-enough key mapping and an out-of-the-box Sublime mode, so I haven't spent too much time figuring out how to incant my favorite shortcuts. It has a much, much better Terminal, and the Copilot integration is very nice. I've had no complaints.
I still have Sublime installed, but I stripped out most of the plugins and use it as a vanilla text editor. I continue to use Sublime Merge on a daily basis (literally just for point & click commit building).
I guess my moral is, extendable ecosystems are amazing, but just because you paid for the core software does not mean free add-ons will be, or remain, as high quality as the core software, or even continue to exist.
1 - https://github.com/titoBouzout/SideBarEnhancements/commit/d6...
You added a method to the base `Object` object. Everything is an Object in Ruby. Unlike Javascript, blocks in Ruby (of which Rake tasks are comprised entirely of) do not create a private context in which to hide functions. If you redefined that same function name later in the task, it would clobber your original implementation.
> Classes already do that. I’d much rather create an instance of a helper object than magically inject methods into my class. It makes the code more explicit and discoverable too.
You might even want to create a helper class, and include several modules by which to build out the functionality of that helper class. That class might even inherit from a baser class, providing even more functionality. All options are available to you in Ruby.
> To each their own, but frankly your assertions sound like nonsense to me.
It sounds like you didn't bother to learn much about the language, or framework, at all. To each their own indeed.
We had a group of talented designers/artists wrangling Photoshop and pumping out a few of these designs a day, each, and as we scaled up and gained a lot of repeat customers, tracking these PSDs became a big problem. The designers were graphically talented, not technically savvy. The PSDs were stored on a shared NAS drive that the whole company could see. The designers had a complex naming system to manage major revisions, but overall there was no "history" beyond the classic "_v2_2008_09_best.psd" naming technique.
Several times every week I had to fix "accidentally dragged the PSD folder somewhere and lost it" level problems. Getting IM'd from tech support because the underlying server was falling over trying to clone the multi-GB folder 3 times, logging into a workstation as Admin and searching for an updated PSD that the vacationing Designer hadn't synced back to the NAS before leaving for work, that kind of thing.
As soon as I was promoted to Supervisor I made my first big move. It took a lot of training, far more talking than I thought it should (back then I didn't know anything about politics), but I was able to get SVN implemented to replace the NAS share. I wrote quick-reference documents, in-depth guides, (this was before I knew that no one reads anything, ever, for any reason) and eventually just had to do one-on-one training with everyone just to explain the concept and basic useage.
One of the most satisfying feelings of my career continues to be watching attitudes change over the course of a summer. None of the design-y people liked the new set of hoops they had to jump through. Check-Out, Check-In, Lock, etc, it was "too much". Then, at a happy hour someone mentioned how we hadn't lost the PSD folder in a while. Later someone came to me panicking because a client wanted to re-run an ad from 2 months ago with a couple tweaks, and she didn't have the source PSD or the source material -- I did a live demo on how to get a historical version back, and that's when it really clicked with everyone. With internal political will behind the toolset, it now became an IT problem, as our SVN useage was nothing like Engineering's usage.
Of course file locking was a huge PITA, that feature replaced "forgot to copy the changed file back before vacation" as a problem category. But it also eliminated the problem where 2 people would open the same PSD directly from the NAS share, make their changes, and only the last one to save gets their work persisted. So, a toss-up I guess.
Ruby doesn't have functions. It only has Objects, and methods on those Objects. Generally you won't run into method nuking because generally there's no need to define the same class in different files.
Yes, you can overwrite method definitions on objects, you can even do that dynamically at runtime. Yes, it's a shotgun. No, it's not wrong, it's just another tool in your toolbelt.
> 2. The module system is strange. Why do my file names and class names need to match? Why can’t i just import the files i want like other languages?
You can require whatever you want, named whatever you want. Rails only looks like magic in this regard because it's coded around conventions so that it can abstract away all that boilerplate. Somewhere before you try instantiate MyController, it was require'd into the project for you utilizing those basic language features. `config/application.rb` is a good reading point to start exploring how this works.
A tremendious amount of logic in Rails is derived from how you name things. Don't fight this system, learn it. Fighting it will only be pain and agony, and I promise you there is a reason for why it works the way it does.
There is absolutly nothing stopping you from calling `require 'my_module'` to bring "BobsGreatestModuleEver" into context. You can missmatch all you want. I have no idea _why_ you would want to do that, seems like a bad precident, but go wild. Ruby works this way like any other language.
> 3. Includes (aka mixins) are a bad idea. See below. > 4. Many of the language features are designed to hide how code works. Quite often i wonder to myself “where does this variable/function come from?” #1 is also a good example of this.
Includes/Mixins are designed to encapsulate shared functionality. Like any effective shotgun if you shoot your feet off you'll be hurting, so don't shoot your feet.
Use your console! If you've got a class with a method and you have no f'n idea where it's defined, just ask it to tell you.
irb(main):002:0> MyWeirdClass.new.method(:search).source_location
=> ["/app/helpers/weird_stuff/search_methods.rb", 4]
> 5. Coming from a typed language, the lack of types makes me feel naked and more prone to screw something up.Eh, I think this is one of those tech religious war topics. I've wrangled a lot of typescript and I cannot say that having types have made me feel protected in any way. If anything, TS in particular, it's felt like just _more code_, and I'm a fan of not having any more code that can be helped.
That aside, the Ruby way is Duck typing. If your code is in danger of receiving arbitrary properties, it's very straightforward to protect that code by just inspecting the properties. If it walks like a duck and quacks like a duck, it's probably a duck.
def dangerous_method(arbitrary_thing)
return unless arbitrary_thing.is_a? KnownThing
raise UnsupportedPropertyError unless arbitrary_thing.respond_to? :each
arbitrary_thing.map { |d| ... }
end
> 6. The strange and elitist opinions of ruby fanboys. Sorry but code terseness is not a panacea and “unless” is terrible. It seems like code readability and understandability are less important to this crowd.Ruby is _all about_ code readability and developer experience. `return unless some_condition?` is gods greatest gift to programming and I will die on that hill.
It can go to an extreme. Like every language you will meet your code golfers who want to take things way, way too far, but that's not unique to Ruby. That's just a people thing. During PR review it's not abnormal for me to ask for terse code to be expanded into a longer form simply for readability.
I tried to use GEOS but it was just too slow. TPS got me from LOAD "*",8,1 to productivity far, far faster.
I know that a real CRT would be the best for my nostalgia vibes, but honestly they take up so much space. This theoretical product doesn't need to be perfect, just give me a few knobs to turn to adjust whatever settings are available, and inject vertical bars to fix the aspect ratio. I'd pay good money for such a device.
Any time I see status code sidestepping, it informs me that something more basic has been skipped earlier. "The monitoring is firing too often because of 404 errors, we should make this endpoint send back a 200 all the time so we stop being bothered by errors that are not errors" reads to me like curing a symptom.
I purchased a Kindle after that trip. I read a lot more than I used to because between my phone and the physical Kindle I always have my current book ready to go. Physical book purchases can now be hardcover-only because I'm buying for a permanent collection, not endless consumption.
Now that I think about it, it feels exactly like it felt when I paid off my first car. The phone even cost nearly as much as that beater cost me in my youth.