• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. A brief look at programming paradigms

      Overview If you've spent any significant amount of time programming, then you've probably heard discussions about imperative, functional, and declarative programming. These discussions are often...

      Overview

      If you've spent any significant amount of time programming, then you've probably heard discussions about imperative, functional, and declarative programming. These discussions are often mired in technical knowledge and require a fair amount of intuition when trying to grasp the differences between the examples placed in front of us. These different programming styles, usually called programming "paradigms", are discussed as if they exist within a vacuum with complete and total isolation from one another. This only furthers the confusion and frustration among newer programmers especially, which runs counter to the goal of instructing them.

      In this post I'll be taking a look at the oft-neglected intersections where these paradigms meet with the hope that the differences between them will be better understood by reframing our existing knowledge of programming basics.

      Note: I'll be using PHP for my code examples and will try to provide comments when necessary to point out language quirks.


      Understanding Fundamentals is Imperative

      Let's start by first reviewing the most basic, fundamental programming paradigm: imperative programming. The term is a bit strange, but the important thing to understand about it is that imperative programming refers to writing software as a series of instructions where you tell the computer how to solve a specific task. For example, if we need to add together a bunch of numbers inside of an array, we might write code that looks like this:

      $numbers = [ 8, 31, 5, 4, 20, 78, 52, 18, 96, 27 ];
      $sum = 0;
      foreach($numbers as $number) {
          $sum += $number;
      }
      

      This is a pretty typical example that you've probably encountered in some form or another at some point in your programming studies or career--iterate over an array one element at a time from the first element to the last and add the current element to some accumulating variable that starts at 0. The kind of loop you use may differ, but the general format of the solution looks the same. This is very similar to the way the computer itself performs the task, so the code here is just a relatively human-friendly version of the actual steps the computer performs. This is the essence of imperative programming, the basic building blocks of everything you learn early on.


      Abstract Concepts

      As the software we write gets larger and more complex, we then tend to rely on "abstractions" to simplify our code and make it easier to understand, reuse, and maintain. For example, if we've written a program that adds arrays of numbers together, then we probably aren't doing that in only one place. Maybe we've written a tool that generates reports on large data sets, such as calculating the total number of sales for a particular quarter, gross profit, net profit, remaining inventory, and any number of other important business-related metrics. Summing numbers could be so common that you use it in 30 different places, so to avoid having to maintain 30 separate instances of our number adding code from above, we define a function:

      function sum($numbers) {
          $sum = 0;
          foreach($numbers as $number) {
              $sum += $number;
          }
      
          return $sum;
      }
      

      We do this so frequently in our code that it becomes second nature. We attach so many names and terms to it, too: DRY, abstraction layers, code reuse, separation of concerns, etc. But one thing experienced programmers learn is to write their functions and object and interface methods in such a way that anyone who uses them doesn't need to care about the underlying implementation details, and instead only need to worry about the method name, expected arguments (if any), expected return type (if any), and expected behavior. In other words, they don't need to understand how the function or method completes the intended action, they only need to declare what action they want performed.


      A Declaration of Understanding

      Anyone who has looked into the concept of the declarative programming paradigm should find those last words familiar: "they don't need to understand how the function or method completes the intended action, they only need to declare what action they want performed". This is the oft-touted explanation of what declarative programming is, the difference between detailing "how" and declaring "what", and I believe that it's this great similarity that causes imperative and declarative programming to become heavily entwined in a programmer's mind and makes it difficult to understand. Take this common example that authors tend to use to try to detail the difference between declarative and imperative programming:

      // imperative
      function sum($numbers) {
          $sum = 0;
          foreach($numbers as $number) {
              $sum += 0;
          }
      
          return $sum;
      }
      
      // declarative
      function sum($numbers) {
          return array_reduce($numbers, fn($x, $y) => $x + $y, 0);
      }
      

      The authors will go on to state that in the imperative example, you tell the computer how to sum the numbers, whereas in the declarative example you don't tell the computer how to do it since you don't know anything about the reduce implementation, but intuitively it still feels as if you're telling the computer how to perform its task--you're still defining a function and deciding what its underlying implementation details are, i.e. the steps it needs to take to perform the task, even if its details are abstracted away behind function or method calls that could have varying implementation details of their own. So how the hell is this any different from defining functions like we do in imperative programming?

      The answer is simple: it isn't. We've used so many names and terms to describe functions and methods in our ordinary imperative programming, but the truth is that a well-defined function or method serves as a declarative interface to an imperative implementation. Put differently, declarative programming is defining and utilizing simple interfaces that describe what you want accomplished while the underlying implementation details are inevitably written using imperative code.


      Functional Differences

      Now we can finally tackle one of the biggest trends in programming right now: the functional programming paradigm. But to understand this paradigm, it's important to understand what a "function" is... from a mathematical perspective.

      Yes, I know, math tends to be a enthusiasm sink for many, but don't worry, we're not actually going to be doing math. We only need to understand how math treats functions. Specifically, math functions usually look something like f(x) = {insert expression here}, which is loosely equivalent to the following code:

      function f($x) {
          return {insert expression here};
      }
      

      The important thing to note about functions in math is that you can run them a theoretically infinite number of times on the same input x and still get the same return result. Unlike in a lot of the programs we can write, math functions don't produce side effects. Files aren't written to or destroyed, database entries aren't deleted, some global counter somewhere isn't incremented, and your x doesn't suddenly change. The idea behind functional programming is to embody some of that nature of mathematical functions because they're predictable and always reproducible, and therefore simple to test as well. For example, take the following:

      // not functional
      function increment(&$x) { // pass by reference--$x will be modified outside of this function!
          $x++;
      }
      
      $x = 1;
      increment($x);
      increment($x);
      increment($x);
      
      // functional
      function increment($x) { // pass by value--$x will NOT be modified outside of this function!
          return $x + 1;
      }
      
      $x = 1;
      $y = increment($x);
      $y = increment($x);
      $y = increment($x);
      

      Note that the first example will change the value of $x on each call, meaning each subsequent call of increment($x) produces a different result. Meanwhile the second example doesn't change $x and so the return value of increment($x) is always the same. This may seem like a silly example, but in larger, more complex software this can be significant. So now that we have an understanding of functions from a mathematical perspective, we have everything we need to actually understand what functional programming is.

      Functional programming is a subset of declarative programming. Just like in declarative programming, you use simple interfaces to tell the program what you want to do rather than how to do it. But unlike declarative programming as a whole, functional programming imposes some additional restrictions on what you should and shouldn't do:

      • You should encapsulate behavior in pure functions, which always give a consistent output for a given input and don't have side effects.

      • You should write functions in such a way that you can compose them together, allowing you to combine and chain behavior to produce new functions or use the output of one as the input for another.

      • You should avoid side effects as much as possible.

      • You should avoid mutable state (e.g. changing the values in a variable).

      • You should avoid sharing state between components.

      These restrictions would require an entirely separate post on their own to properly cover and have been covered so many times in so many ways by others elsewhere that it would be superfluous for me to try to add anything more. It's important to note, however, that these restrictions are imposed because they provide some key benefits. By avoiding side effects and by avoiding mutable and shared states, the code you write becomes more predictable and tracing the behavior of an algorithm becomes far simpler. By writing pure, composable functions, you create reusable building blocks that can be strung together in virtually any configuration with predictable results. This makes writing, reading, maintaining, and debugging code easier and less error-prone.

      That said, I feel that it's important to note that in the real world when writing practical software that users can interact with, it's simply not possible to completely avoid side effects or mutable state. The very act of creating and updating database entries is itself an act of mutating state, which runs contrary to functional programming principles and is essential for many important software projects. But even if you can't adhere strictly to functional programming principles, it's possible to benefit significantly from being aware of them and integrating them into your own software development strategies.

      Let's consider a more practical example to illustrate this. Imagine that you've built a social media website and you're trying to test a push notification system that will be triggered when your user receives a new message. Now imagine your code and unit tests look something like this:

      function sendNotification(&$message) { // pass by reference--$message will be modified outside of this function!
          $notification_system = new NotificationSystem();
          if(!$message['sent_push_notification']) {
              $notification_system->sendPushNotification($message);
              $message['sent_push_notification'] = true;
          }
      }
      
      function testSendNotification() {
          $message = [
              'user_id'=>'{some_id}',
              'contents'=>'Hi!',
              'sent_push_notification'=>false
          ];
      
          sendNotification($message);
          sendNotification($message);
      }
      

      At a quick glance you probably wouldn't be aware of why the second message didn't send, but the fact that our sendNotification() function mutates the state of the data provided to it is the culprit. This is code that doesn't adhere to functional programming principles since the data provided to it is mutated. As a result, running the function multiple times on the same variable doesn't result in the same behavior as the first call. If we wanted to work around this without adhering to functional programming principles then we would need to manually set $message['sent_push_notification'] = false; between function calls, which makes our unit tests potentially more error-prone. Alternatively we can make a simple change to adhere better to those functional principles:

      function sendNotification($message) { // pass by value--$message will NOT be modified outside of this function!
          $notification_system = new NotificationSystem();
          if(!$message['sent_push_notification']) {
              $notification_system->sendPushNotification($message);
              $message['sent_push_notification'] = true;
          }
      
          return $message;
      }
      
      function testSendNotification() {
          $message = [
              'user_id'=>'{some_id}',
              'contents'=>'Hi!',
              'sent_push_notification'=>false
          ];
      
          sendNotification($message);
          sendNotification($message);
      }
      

      Now both notifications will be sent out, which is what we would intuitively expect. You should also notice that the above is also a blend of imperative, declarative, and functional programming. Our function definitions have imperative code, our sendNotification() function adheres to the functional programming principle of avoiding mutable state (well, mostly), and our NotificationSystem object provides a declarative interface for sending a push notification for a message.


      Final Thoughts

      By viewing these three paradigms not as completely separate concepts but as layers on top of one another, where functional programming is a type of declarative programming which is implemented using imperative programming, we can stop being confused by their similarities and instead find clarification in them. By understanding that imperative programming is the backbone of everything, that declarative programming is just simplifying that backbone with simple interfaces, and that functional programming is simply adding some additional guidelines and restrictions to the way you write code to make it more consistent, reusable, and predictable, we can start to see that we're not choosing one programming paradigm over another, but instead choosing how much consideration we place on the design of the programs we write. Except in purely functional languages, functional programming isn't some alien concept distinct from imperative or declarative programming, but is instead a natural evolution of the two.

      There are a lot of details I've glossed over here. Each of these programming paradigms is far too detailed to include a proper analysis in an already lengthy post that tries to separate them from each other and clarify their differences. Blog articles exist in a thousand different places that can do each one far more justice than I can, and programming languages exist that completely cut imperative programming out of the picture. But for your average programmer slinging JavaScript, C, Rust, PHP, or what have you, I hope that this serves as a crucial starting pointing to understanding just what in the hell these functional programming enthusiasts are on about.

      25 votes
    2. Covid testing rant

      I'm in line at a free covid testing site. It is a CVS minuteclinic. I have to use the normal drivethrough, and self administer the nasal swab. What the hell is that bullshit? My wife went to a...

      I'm in line at a free covid testing site. It is a CVS minuteclinic. I have to use the normal drivethrough, and self administer the nasal swab.

      What the hell is that bullshit? My wife went to a 'real' test site where a professional swabbed and she described it as a pap smear on the back of her eye.

      So I'm going to a CVS so they can print a barcode, give me, an unqualified layperson a long qtip and a test tube to do my own test and drop in a collection box. Which they will likely ship to an actual lab.

      And for all of this 'work', they get to bill my insurance for hundreds or more, which will likely mean rate hikes later.

      Our healthcare system is a sham, and this is just further proof. Given I have to do it myself anyway, the government should just mail me a kit which I then drop off.

      It would not shock me in the slightest if they actually just drop the tests in a dumpster and just send a 'negative' a few days later.

      Edit: 40 min later, through line and swabbed. Yes, they just have Quest diagnostics empty the dropbox. 0 reason CVS should be involved.

      17 votes
    3. An update on the unofficial Tildes 2020 census

      Hey everyone, I hope your life is good, and if isn't, it'll get better, so don't you surrender. :) The census this year had a much improved response! As of writing this I've had 302 handed in...

      Hey everyone, I hope your life is good, and if isn't, it'll get better, so don't you surrender. :)

      The census this year had a much improved response! As of writing this I've had 302 handed in forms! I'd also like to thank everyone who graciously donated to offset the cost for JotForms premium. I've almost broken even (Like 2€ off so it's not a big deal really). This post just serves as a simple update and a gentle reminder if you haven't filled out the survey but want to, or haven't gotten around to it or simply forgot. If you don't want to participate that's fine too.

      https://form.jotform.com/202281385322348

      As responses are still dwindling in, I'll probably keep the thing open for another week or so. Have a fun weekend!

      26 votes
    4. Hive mind: In the early 2000s, there was a website that tracked and reviewed open source applications. What was it?

      You could look up, say, CMSes, get some basic info about each one (to make useful decision), and learn who its active committers were. The site closed, I know. Do you remember its name? Or people...

      You could look up, say, CMSes, get some basic info about each one (to make useful decision), and learn who its active committers were. The site closed, I know. Do you remember its name? Or people who were part of it?

      I asked someone to write an article for me about "review sites for open source" -- think Yelp for Software -- and neither of us can remember its name. But if you have others that you think should be included (for positive or negative reasons), please let me know.

      10 votes
    5. Tell me about your experience with martial arts

      As life slowly returns to normal in the UK, I've felt the need to look after my fitness more. I lacked discipline throughout lockdown to workout at home and keep my fitness. As a result I've got a...

      As life slowly returns to normal in the UK, I've felt the need to look after my fitness more. I lacked discipline throughout lockdown to workout at home and keep my fitness. As a result I've got a nice COVID-gut, and my endurance and strength are shot. I swam regularly before quarantine hit, at least 4 times a week, and I'm keen to get back into that. But I'm also looking at picking up a martial art, for a more intense workout and fitness, as well as just to pick up a new skill. However I have no idea where to begin with martial arts, so I figured I'd start a thread for some inspiration, and go from there.

      So are any tilderen martial artists? If so, tell me about it!
      What do you practice?
      How long have you done it?
      How does it benefit you?
      Do you attend classes or practice solo?
      Would you recommend your martial art to a beginner?

      16 votes
    6. Musings on Tildes' topic wikis and resources

      TL;DR: I did not know each individual group had wikis and I find them pretty great (the LGBT and tech ones in particular). Do they get updated regularly, are they searchable via the site-wide...

      TL;DR: I did not know each individual group had wikis and I find them pretty great (the LGBT and tech ones in particular). Do they get updated regularly, are they searchable via the site-wide search, and who can contribute to them exactly?

      I was looking through the "note-taking" and "productivity" tags for recommendations on a new note-taking app when I came across the extension resources wiki article in "Tech". It hasn't been updated recently but it made me realize one of the reasons why I find places like reddit useful is that the "Pinned FAQs", "Beginner Guides to <Hobby>", and "Megaposts" on reddit are an excellent source of (for lack of a better term) "peer-reviewed" recommendations and are often the catalyst for fun discussions.

      I have, through my time here on tildes, discovered so many excellent recommendations even by just using the search bar and browsing threads - to the point that if say, a reddit and tildes post give me conflicting recommendations, I would trust the tildes post 9 out of 10 times. The climate of posts here are less inflammatory and the discussion on pros/cons are more calm, friendly, and thought through. I admit they have impacted my views on a bunch of things (not least of which is trying firefox as my main browser).

      Are resource dumps like that something that the community here find viable in general? Are there plans for updating their implementation to be more easily accessible or is it too far removed from the discussion-based fluidity of the site? I understand that there are other places online to find information, but rarely do I find it at this level of transparency of bias and (on average) free of any bloat.

      I guess I'll end this little thought stream with a thank you for all the people who post here and a curiosity for the future discussions to come. I've lurked a lot and learned a lot.

      16 votes
    7. A friendly reminder: If you own a bicycle, you must own a helmet

      I shivered at the thought of being severely brain-damaged after being hit by a car while cycling about a month ago. I am now extremely humbled by the fragility of the human body. The vehicle that...

      I shivered at the thought of being severely brain-damaged after being hit by a car while cycling about a month ago. I am now extremely humbled by the fragility of the human body. The vehicle that hit me was going really slow--a hard requirement of the lane. An apt cyclist can easily achieve 30 MPH (48km/h). That's enough to do a lot of damage itself. Now imagine a shock with a vehicle coming in the opposite direction at a mere 20 MPH (32km/h) (that’s not what happened to me BTW. I have no recollection of the accident, and no wish to get in touch with the driver. I don’t resent him at all, in fact he was extremely caring and wanted to ride with me in the ambulance but my mom was already occupying the only spot).

      I'm terrible at physics but you guys and girls are probably not, so you make the calculations. To sum up, without a helmet a ridiculously "benign" accident at low speeds can literally impair you for life.

      After the crash, my helmet went into pieces. I wish someone had got it so I can visualize the extent of my luck. It was an old helmet that should have been replaced at least 2 years ago. It cost me about 30 bucks and probably saved my life or cognition.

      So, cyclists: own a helmet and use it whenever you're on the bike even if there are no cars around. A skilled cyclist can still crash all by himself/herself. And a car could appear from nowhere.

      Some people get brain damage by falling in the bathroom. Why would you be safer waltzing around on top of a metal frame?

      41 votes
    8. [SOLVED] Archiving a deceased loved one's Twitter timeline, including media

      Recently a loved one of a friend has died and they would like to archive their entire timeline (no retweets), including media they posted. I've looked around a little bit and the Twitter API only...

      Recently a loved one of a friend has died and they would like to archive their entire timeline (no retweets), including media they posted.

      I've looked around a little bit and the Twitter API only allows 3200 tweets to be exported. As this includes RTs, this goes back to about 2018, while the account was made in 2011, so it's missing about 90% of their tweets. Also, getting all the media isn't really possible.

      Do any of you know a way to accomplish this? Or, can anyone direct me to scripts that crawl the page and save every non-RT tweet + potential media? I'm not very tech-oriented but I can at least run python scripts.

      I should mention that I've so far checked out Allmytweets.net (returns RTs) and the Twitter archival project (or whatever it's called), which is a group of people that help in archiving accounts, but they haven't responded yet.

      13 votes
    9. Life has gotten a lot more stressful for me lately

      I find it difficult to reach out to people, especially so publicly, but this shit is getting out of hand, and I need to let it out. Tonight I couldn't sleep because I've lost some sensitivity in...

      I find it difficult to reach out to people, especially so publicly, but this shit is getting out of hand, and I need to let it out.

      Tonight I couldn't sleep because I've lost some sensitivity in my left arm. You know how you get the numbness in your arm in the morning when you sleep on it at night? Except I haven't: it just started to go off slowly, fully functional but clearly numb in places. Tonight's different because in addition to my arm, like the last time, several other parts of my body express the same symptom: my right foot and my right shoulder. It's one of the most terrifying things I've experienced in a long time.

      I think stress is finally getting to me.

      I'm pretty sure it's stress because I'm an otherwise-healthy young male with no history of chronic disease – or susceptability to common ones, even – with a stable diet and lifestyle. I haven't had significant changes in my routines or preferences for a long time, except for the fact that I started walking more. I haven't been outside the city, let alone the country, for almost a year.

      The only major thing that's changed is my living situation.

      I've been trying to make it as an independent creator – writer, developer, designer, modder – for a year now, maybe two. I've been working on several projects publicly and a lot more privately: mostly writing, some development, my website included. It hasn't been arduous but has been very long without much result to speak of. I haven't been marketing myself a whole lot, and frankly, there isn't much to show aside from a lot of peripheral talk (like the production logs of the website or Mythos).

      I live alone in a small studio owned by my parents. They also afford me a small weekly fund of about $27, for just about $110/mo.. Even in Russia, where I live, that isn't a lot of money – you get to buy just about enough food for a month, and that's it – but I get it for existing, so I don't complain. On the surface, it's a stable and excellent arrangement that I should be nothing but grateful for.

      Last week, I made an error in telling my parents it might be a good idea to sell the studio and use the funds to move to a bigger city and let myself live off them while I develop my non-career career path (they've made it clear with anything but a written statement this studio is meant to be for me, and the ownership is but a formality to avoid paying more taxes). My mother lashed out at me: how stupid of an idea it was to rent when I have a perfectly-good apartment, and where would I end up when I eventually spend everything down to the last dime... I don't remember the rest of it 'cause I tuned it out, for the sake of my emotional stability at the time.

      I haven't told them about what I'm trying to accomplish here: they think I'm looking for a site designer position. I haven't told them a lot of things: about my depression, about my anxiety, about what I like, what I want, what I need... I wouldn't want them to know 'cause I already feel trapped in their influence on my life. They've been helicopter-parenting my whole life, and every time I tried to gain that much autonomy and freedom, I've been met with resistance, and blame, and "what will people think of you", and even fake tears. There's no dialogue to be had, and the energy it takes to make any kind of meaningful progress is the energy I don't have.

      So, I've been trying quietly to make it on my own.

      I've been using depression-induced mood swings to maintain some degree of order in my life, but recently it's become impossible. My apartment is a mess, and I keep up only what I immediately need; even that takes a lot. I had a brief few days of victory recently when I push through sleeping later and later until I started waking up very early, when I feel most energetic and positive – and even that eventually washed away. It's a good day when I'm able to get one thing done. The rest of them I weather out as best I can, including spending much more on comfort food (and gaining proportional weight) than I should. It also usually involves a lot of gaming and mindless watching of Internet videos, for what seems to me obvious reasons.

      I've been through periods like these before, but they've never felt quite so hopeless. I need to make money to get the freedom I need, which I can't do because I barely have the energy, which is because I can barely afford to live through the week with the vices that keep me steady, which I need because I don't have the freedom I need...

      I'm not lazy. I can work long days. I have been working long days on projects that promised some degree of "more freedom". Back when I thought Intergrid would be my saving grace, I'd work studiously to make it happen by a set deadline. Earlier still, I'd work for $80/mo. on a website redesign that didn't go through. (It was for a friend, and what may be a quarter of rent for you had been almost double my monthly allowance, and it was perfectly enough 'cause I was enjoying the work.) I don't waste my days on senseless entertainment if I can help it: I have several projects I'm working on when I can, that I enjoy doing and would do for free if I had a financial base otherwise.

      So why not find a job?

      The jobs I did hold previously – a couple of days each – gave me no hope for finding something locally. I live in a semi-rural region of Russia where modern job opportunities aren't very present. People here work hard physically but not intellectually. (First-world problems, I know, but at this stage I can't afford to waste what little energy I have.) Jobs elsewhere? I don't think I'd cut it. For all my experimentation and trying things out and showing bits and pieces here and there, I don't have a portfolio worth a damn, and the last time I tried making one felt like grinding my teeth on a metal rail. That $80/mo. job I had, I had because I mentioned to a friend that I could take that thing he wanted to do for him, and he said "Yeah, okay, you've been talking a lot about web design so far, handle it for me". I don't think someone who doesn't know me would be that trusting.

      So it feels like doing something I enjoy – which doesn't take away what little energy I have – is the only way for me, at least at the moment. Make enough to be able to move out to most places in Russia and not have to worry about food and the roof over my shoulder.

      What I'm going to try is stick to a schedule. I prefer to take my time, work out the kinks and iron out the bugs before publishing something. Given the circumstances, however, it may be time to employ some mental tools. I've heard advice before about publishing a story, or a sketch, or an episode of the podcast every month, or ever week, as long as it's on rails. Good story? Bad story? It goes out. I have a few stories I want to tell, but I've been keeping 'em "unlisted" for a long time now, hoping to work it all out beforehand. Maybe rough as they are, I'm better off with them seeing the light of day. Like I said: I'm not lazy. I just need to find a way to make it work.

      20 votes
    10. What are your favorite community radio stations?

      I'm a big fan of community radio, freeform if I'm being picky. I'm curious... Which stations are my fellow Tilderinos listening to? (I'm particularly interested in non-English speaking stations)...

      I'm a big fan of community radio, freeform if I'm being picky. I'm curious...

      1. Which stations are my fellow Tilderinos listening to? (I'm particularly interested in non-English speaking stations)
      2. How are you listening?
      3. More generally, are people even listening to much radio any more? If not, why is that?

      To get things started, my own answers are.

      1. WFMU, dublab, Resonance FM, rrr.
      2. Generally I set up an alias per station with fish shell and stream each link via cvlc
      3. As I'm posting I guess it's obvious but yes, I listen to the radio almost daily. It's a nice break to have one less thing to make a decision about (what to listen to) while avoiding having to listen to top 40 and discovering all sorts of new music I'd otherwise likely miss out on.
      8 votes
    11. I started a React and React Native screencast, I'd love to get your opinion on it

      I have always believed that sharing what you know is very important. Altruistically, it helps create a wealth of knowledge that anyone can build upon. Selfishly, it creates a knowledge-base for...

      I have always believed that sharing what you know is very important.

      Altruistically, it helps create a wealth of knowledge that anyone can build upon.

      Selfishly, it creates a knowledge-base for your future self, and - arguably more importantly - helps you build a following.

      After years of pondering on the idea, I took the plunge and started a screencast on React and React Native. I only published four episodes so far, and they are all very basic, but I'm planning on publishing a video every other day for a few months at least.

      It's called RNcasts. You can see it here. I would love to get your opinion on it.

      It's by no means perfect, it hurts my eyes to look at it, and it hurts my ears to hear my own voice, but I had to get started somewhere.

      Also, I will be sharing my journey of working on this screencast on the RNcasts blog. If you are interested in starting your own screencast or video course, feel free to follow it. I'm hoping to share all I learn, the good and the bad.

      4 votes
    12. Just how bad is Donald Trump's 2020 US pitch?

      Not submitting a link. Last thing that scumbag needs is web traffic. But...let's suppose every one of this items actually came to pass in a reasonable form. There is some stuff there even I would...

      Not submitting a link. Last thing that scumbag needs is web traffic.

      But...let's suppose every one of this items actually came to pass in a reasonable form. There is some stuff there even I would legitimately want. So let's see the good/bad of Trump's lies, and discuss.

      I'm bolding things that are (IMHO) obviously very, very bad. Italicizing ones that might be good, but are likely just lies. Striking out anything that is blatant pandering that the president has 0 ability to act on.

      The purpose of this mental exercise is to see how people who don't keep up with politics might fall for the rhetoric. Know your enemy and all of that.

      JOBS

      • Create 10 Million New Jobs in 10 Months
      • Create 1 Million New Small Businesses
      • Cut Taxes to Boost Take-Home Pay and Keep Jobs in America
      • Enact Fair Trade Deals that Protect American Jobs
      • "Made in America" Tax Credits
        • I like the idea of trying to locally source stuff. Tax Credits are not how to do it.
      • Expand Opportunity Zones
        • Eh, sounds good on paper...but will likely just be another loophole.
      • Continue Deregulatory Agenda for Energy Independence

      ERADICATE COVID-19

      • Develop a Vaccine by The End Of 2020
      • Return to Normal in 2021
        • Maybe if we actually did what we needed to do. I don't have my hopes up.
      • Make All Critical Medicines and Supplies for Healthcare Workers in The United States
      • Refill Stockpiles and Prepare for Future Pandemics
        • Yay for fixing your fuck-up way too late?

      END OUR RELIANCE ON CHINA

      • Bring Back 1 Million Manufacturing Jobs from China
      • Tax Credits for Companies that Bring Back Jobs from China
      • Allow 100% Expensing Deductions for Essential Industries like Pharmaceuticals and Robotics who Bring Back their Manufacturing to the United States
      • No Federal Contracts for Companies who Outsource to China
        • Outsourcing bad. But China isn't the only place.
      • Hold China Fully Accountable for Allowing the Virus to Spread around the World
        • God. Damn. It. I have no words.

      HEALTHCARE

      • Cut Prescription Drug Prices
      • Put Patients and Doctors Back in Charge of our Healthcare System
      • Lower Healthcare Insurance Premiums
      • End Surprise Billing
      • Cover All Pre-Existing Conditions
        • Wait, didn't ACA do that?
      • Protect Social Security and Medicare
        • They obviously mean by increasing age to collect, privatizing, and actually trying to dismantle it. But you know...would be good if they did the opposite of what they've tried to do the last 2+ decades.
      • Protect Our Veterans and Provide World-Class Healthcare and Services
        • How about for everybody else too?

      EDUCATION

      • Provide School Choice to Every Child in America
        • Yea, let's do away with church/state separation and also enable crippling debt from kindergarten. /s
      • Teach American Exceptionalism
        • I have no words. This is basically the worst thing ever.

      DRAIN THE SWAMP

      • Pass Congressional Term Limits
      • End Bureaucratic Government Bullying of U.S. Citizens and Small Businesses
        • Nice soundbite...but 'End Bureaucratic Government' is code for "Let's stop regulating to prevent discrimination and other things that are generally good ideas"
      • Expose Washington’s Money Trail and Delegate Powers Back to People and States
      • Drain the Globalist Swamp by Taking on International Organizations That Hurt American Citizens
        • Yea...cause the USA is the bastion of all that is good and does no wrong /s

      DEFEND OUR POLICE

      • Fully Fund and Hire More Police and Law Enforcement Officers
      • Increase Criminal Penalties for Assaults on Law Enforcement Officers
      • Prosecute Drive-By Shootings as Acts of Domestic Terrorism
      • Bring Violent Extremist Groups Like ANTIFA to Justice
        • Somehow I think the actual Nazis won't be targeted by this.
      • End Cashless Bail and Keep Dangerous Criminals Locked Up until Trial
        • End monetary Bail. Anything else: bad.

      END ILLEGAL IMMIGRATION AND PROTECT AMERICAN WORKERS

      • Block Illegal Immigrants from Becoming Eligible for Taxpayer-Funded Welfare, Healthcare, and Free College Tuition
      • Mandatory Deportation for Non-Citizen Gang Members
      • Dismantle Human Trafficking Networks
      • End Sanctuary Cities to Restore our Neighborhoods and Protect our Families
        • I can't bold this one hard enough
      • Prohibit American Companies from Replacing United States Citizens with Lower-Cost Foreign Workers
        • Nice soundbite, but give Unions power again and those kinds of problems will resolve themselves.
      • Require New Immigrants to Be Able to Support Themselves Financially

      INNOVATE FOR THE FUTURE

      • Launch Space Force, Establish Permanent Manned Presence on The Moon and Send the First Manned Mission to Mars
      • Build the World’s Greatest Infrastructure System
      • Win the Race to 5G and Establish a National High-Speed Wireless Internet Network
        • Not sure who you're 'winning' against, but whatever.
      • Continue to Lead the World in Access to the Cleanest Drinking Water and Cleanest Air
        • Um....yea.... how about everybody gets those things?
      • Partner with Other Nations to Clean Up our Planet’s Oceans

      AMERICA FIRST FOREIGN POLICY

      • Stop Endless Wars and Bring Our Troops Home
      • Get Allies to Pay their Fair Share
      • Maintain and Expand America’s Unrivaled Military Strength
      • Wipe Out Global Terrorists Who Threaten to Harm Americans
        • That sounds a lot like 'Continue with Endless Wars'
      • Build a Great Cybersecurity Defense System and Missile Defense System
        • Maybe, just maybe, if we stopped bombing everybody else this wouldn't be needed.

      Sorry, couldn't resist adding my additional commentary. So yea, looking over it again...very, very bad. But enough gems in there that the uninformed that only hears about those might fall for it.

      27 votes
    13. Dune thoughts and adaptation

      I can understand why the journey to make this into a film is so convoluted. I'm not sure I've ever read anything so dense and epic. I was always sort of keen to the series, and always thought the...

      I can understand why the journey to make this into a film is so convoluted. I'm not sure I've ever read anything so dense and epic. I was always sort of keen to the series, and always thought the worm god was just cool imagery. So I did have kind of an internal motivation to get this far, but now that I'm about to dive into God Emperor, I just feel bad for anyone that called it quits after the first book. Frank Herbert had a lot to say, and faithfully adapting this to any kind of screen, I think, is impossible.

      9 votes
    14. IOS app to train super basic (pre)algebra skills. Free or freemium.

      I know those are easy to find on children's education materials, but the keyword here is simple. Anything kiddie, requiring too many clicks or that takes 3 seconds is off the table. I kinda need...

      I know those are easy to find on children's education materials, but the keyword here is simple. Anything kiddie, requiring too many clicks or that takes 3 seconds is off the table.

      I kinda need to brush up on my super basic reasoning. In part, because a grown man should know the time table by heart, and in part, because I wanna convince myself that I did not get brain damage after being hit by a car (there's really nothing indicating that, I'm just paranoid).

      I'm looking for something simple that presents me with the multiplication table and or simple calculations to answer under a time frame. The requirement for iOS is that my computer is broken.

      And it really can be super simple, even something I open from a mobile web browser or transfer to my Kindle.

      Additionally: there is no need for if to be an app. A huge list of exercises (with answers) would be greatly helpful.

      Thanks!

      6 votes
    15. Suggestions for no-display laptop

      This is more specific than ~talk would normally have , but tildes doesn't have anything for shopping yet, so... I'm using my laptop right now, but I've found that for a lot of the stuff on my...

      This is more specific than ~talk would normally have
      , but tildes doesn't have anything for shopping yet, so...

      I'm using my laptop right now, but I've found that for a lot of the stuff on my computer,
      I don't really need a screen. I like using the terminal, and can get a lot done just typing:
      no mouse or display. I think this would be great, as I already do a lot of my casual writing
      and note taking my eyes closed, leaning back in a chair.

      What's the best machine that meets these qualifications? Basically, I just need a way to read memory
      out to another drive. Battery would be a must as well.

      Thanks

      12 votes
    16. Tildes Game Giveaway Thread, August 2020

      Important: This will be a noisy thread. If you do not wish to see it in your feed, please use the "Ignore" feature to hide it! Gifters Post your available games, the platform and method of...

      Important: This will be a noisy thread. If you do not wish to see it in your feed, please use the "Ignore" feature to hide it!


      Gifters

      Post your available games, the platform and method of delivery, rules for your giveaways (e.g. first-come first-serve, random draw, etc.), and any additional info or requirements. Feel free to get creative!

      Giftees

      Request giveaways according to the gifter's guidelines!

      Rules

      Anyone can choose to be a gifter, giftee, or both! Giveaway rules are set by individual gifters, but there are handful of guidelines everyone should follow:

      1. No grey market keys! Only giveaway games from reputable sources. If you're not sure what this means, please ask.
      2. Requests for games should be done in the thread, but if the gift is a key, those should be delivered by PMs only. Please don't post keys publicly, even obfuscated ones.
      32 votes
    17. In your opinion, what is the most powerful speech in history?

      Despite not even being his most famous speech, I think that Martin Luther King's final speech "I've Have Been to the Mountaintop" is the most amazing example of public speaking ever. The grand...

      Despite not even being his most famous speech, I think that Martin Luther King's final speech "I've Have Been to the Mountaintop" is the most amazing example of public speaking ever.

      The grand finale of Dr. King's great legacy. A speech given by a man who knew that his days were numbered. A speech given by a man who knew he would not live to see his dream come to fruition. Dr. King discusses the adversity that the Civil Rights movement had already faced and how these challenges were overcome through non violent methods. He challenges America and it's citizens to live up to the ideals of the country.

      Somewhere I read of the freedom of assembly. Somewhere I read of the freedom of speech. Somewhere I read of the freedom of press. Somewhere I read that the greatness of America is the right to protest for rights. And so just as I said, we aren't going to let dogs or water hoses turn us around. We aren't going to let any injunction turn us around. We are going on.

      The speech ends with Dr. King foreshadowing the possibility of his death, an event which would occur the very next day when MLK was assassinated at his motel in Memphis, Tennessee.

      Well, I don't know what will happen now. We've got some difficult days ahead. But it really doesn't matter with me now, because I've been to the mountaintop. And I don't mind. Like anybody, I would like to live – a long life; longevity has its place. But I'm not concerned about that now. I just want to do God's will. And He's allowed me to go up to the mountain. And I've looked over. And I've seen the Promised Land. I may not get there with you. But I want you to know tonight, that we, as a people, will get to the Promised Land. So I'm happy, tonight. I'm not worried about anything. I'm not fearing any man. Mine eyes have seen the glory of the coming of the Lord.

      So that's my vote. What do you view as the greatest speech in history and why?

      24 votes
    18. In what small ways are you considerate towards others?

      I haven't been able to get samfundssind out of my head since reading the article. It's the polar opposite of what you see in a lot of the US, and I wish that more people in this country weren't...

      I haven't been able to get samfundssind out of my head since reading the article. It's the polar opposite of what you see in a lot of the US, and I wish that more people in this country weren't selfish assholes. It blows my mind that people are unwilling to make such small personal sacrifices, like wearing a mask, for the benefit of their neighbors.

      On that note, what are some small, self-imposed inconveniences you put up with to improve the lives of others?

      I'll start: if I'm pulling up to a red light in the right-most lane and there's a car behind me, I'll always move over to the left. There's a chance they want to make a right turn, and there's no need for them to wait behind me for the light to cycle.

      18 votes
    19. Are there any major problems in society that we genuinely do not have any good solutions to?

      One of the most notable aspects of political discourse today is how many of the problems we have seem to have relatively simple solutions for how consequential they are: To reduce wealth...

      One of the most notable aspects of political discourse today is how many of the problems we have seem to have relatively simple solutions for how consequential they are:

      To reduce wealth inequality, we can use progressive taxation, antitrust, support of unionization so that poor people/workers have a large stake in their wages.

      To give poorer people equal opportunity, we can use welfare initiatives like free (as in paid by taxes/free at the point of use) college, better pay for teachers and more equitable resource (as in textbooks, tables, chalk distribution for schools so poor people get more equitable education to rich people.

      To reduce crime, violence and repeat sentencing we can reduce poverty (see the top question), encourage mental health initiatives and do not have cops take thatand have jail be rehabilitative rather than punitive.

      To make make software less centralized and invasive, we can require Internet companies give you full, immediate disclosure of all the forms your data will be used and let people opt out of all of them, delete all their data, and also enforce antitrust when it comes to social media platforms (I.E Facebook should not own Instagram, WhatsApp, Messenger and their new TikTok analogue and the first thing you should see when logging into any of them is a list of ways these companies will collect your data and let you opt out of all of them and be as anonymous as you please)

      To make sure democracy is indeed representative of the people and works well, we can introduce a parliamentary system or multi-winner congressional seats and institute STV or RCV or just approval voting if you really can't have more than 1 representative for an area (the US senate is cucked)

      To make more progress in stopping COVID, we can have mass testing by the government, people must take social distancing seriously and wear masks, medics need to be taken seriously and properly supplied with PPE and all that.

      Given these solutions, what are large problems we have/will have that we genuinely don't have an answer to instead of just not wanting to do something about it?

      A few examples that come to my mind are:

      How do we get corrupion out of a government? Since the vast majority of stuff I have mentioned in this post would be done by governments and governments under extensive corruption cannot be trusted to regulate anything.

      How do we regulate news outlets to be fair and objective? We can get news outlets to be publically/popularly funded instead of ad(large-corporate)-funded and enforce antitrust, but that doesn't stop bias, outright lying and sensationalism.

      How do we get peple to change their minds? Evidence of everything I've mentioned in this post is more than around, but that hasn't convinced Republicans/conservatives. For some people groups, acceptance has literally been a decades-long political campaign to be recognized as normal or ok.

      EDIT: 3 4 more.

      How do we get people to befriend eachother and be social and tell apart those who genuinely don't want to do this and those who do but don't know how to or don't like to/aren't good at doing it in the ways usually available?

      If we choose to let the population decline (see the climate change question), are we fully prepared for the consequences of having a society that will be growing older and older, perhaps indefinitely?

      If we choose to not let the population decline and seek to keep birthrates at replacement level, how do we convince people to do so? If we don't/can't and start using things like artificial wombs to have children, who will take care of them? Do we make orphanages socially acceptable/valued and well-funded? Do we turn kindergartens and schools into a 24/7 institution and add in non-study things like housing and video games, and make teachers basically parents, but with many children to take care of?

      If electoralism fails, what can we do to still have a voice in the world? Can we do anything?

      18 votes
    20. I had to put my best friend to sleep today

      Olly never liked people very much. He was rescued at ~9 months old wandering around the streets in my hometown. Because of this, and perhaps his past, he had an aversion to lots of commotion,...

      Olly never liked people very much. He was rescued at ~9 months old wandering around the streets in my hometown. Because of this, and perhaps his past, he had an aversion to lots of commotion, people he didn't know, or unexpected noise. But between all of that, he came to trust me, and placed his faith in me—his twelve year old owner. He grew up with me, as I went through high school, then university, a few jobs, and more.

      My furry companion, who at night would sleep on my bed, curled up, paws covering his eyes (but only after licking my hand with his raspy tongue for minutes on end) and during the day would wander outside—safety assured, away from any main roads, with lots of high grass to wander through—or lounge under the sun in the front yard.

      He always had to be the boss—have things his way. A large, well-built 6.5kg ginger-tabby who was neutered much later than you'd normally neuter a kitten. This bossiness extended to the neighbourhood competition. He didn't like other cats much, either. This would lead to an occasional, emotionally painful (for both of us) trip to the vets to treat a scratch, or bite. A 20 minute drive in a cat box, as he meowed and sobbed his head off—telling us in no uncertain terms, "let me out!".

      And do you think he'd ever let you pick him up? Not a chance. Everything has to be on his terms! But in between his assertiveness, he shared his love for me, bumping his head into mine, gently touching my face with his paw on occasion, being a part of my life as I was a part of his.

      Unfortunately, none of us can escape the forever ticking of time. 13 good years pass. For the past week though, he started becoming more introverted, would sleep more—and eat less. Taking this kind of cat to the vet is a judgement call that you don't make lightly. Do you cause stress and anxiety, making him trust you less for weeks on end, make him spend more time outside, away from your watchful eye? Or do you visit the vet less frequently, but still proactively, if you know something is definitely wrong?

      I made the latter decision last night, taking him to afterhours. The triage indicated a heart murmur, and a blood panel indicated parameters that might be indicative of mild renal dysfunction—to be followed up at the proper vet tomorrow. So he was sent home, with some precautionary injections, and an appetite and hydration boost.

      Sadly, I never got that opportunity to take him for a follow up. He slept with me that night, but his condition deteriorated rapidly this morning. I rushed him to the proper vet, watching him helplessly tremble and vocalise his scaredness. I can't help but cry as I type this. The staff told me it was time. I knew it, and in some ways, I think he did too. I'm glad I got to give him the opportunity to fade away peacefully.

      I don't have many frames of reference to compare this part of my life to, but it seems to me this is the most pain I've ever felt over a single event. You might be able to get another cat, but you definitely can't get another Olly. A part of my heart is forever gone. I'm a believer that the pain doesn't really go away, you probably just learn to cope with it more, to focus on the years of good, and not the hours of bad. I really hope I can do that, because he was my best friend.

      I love you, buddy. I hope you're at rest now, and I'll miss you always. 🧡

      29 votes
    21. What do you use your extra mouse buttons for?

      I have a mouse with more than the usual 3 clickables (in my case, a Roccat Kova). Originally I got it because I was looking for better gaming performance (higher DPI, polling rate, etc.), and it's...

      I have a mouse with more than the usual 3 clickables (in my case, a Roccat Kova). Originally I got it because I was looking for better gaming performance (higher DPI, polling rate, etc.), and it's symmetrically shaped (re: ambidexterity). However, for some reason (that I can't remember) I ended up mapping two of the extra buttons to Page Up and Page Down.

      Now, I use these paging buttons as complements to the mouse wheel for scrolling, and I have to say that this is one of those "how did live without this before" things. I honestly feel like it's similar to the transition in technology from wheel-less mice to mice with mouse wheels. Nowadays, it's a given that mice have scroll wheels, and everyone uses them, and it's practically unthinkable to want a mouse without one. I feel the same about my mapped paging buttons. I use the wheel for short-distance scrolling, but I use the paging buttons for wide-area jumping around in a scrollable UI element (e.g. web page). This particular mouse also lets me hold down the mouse button to get repeated "keystrokes" just like a keyboard.

      I was curious what things other Tilders do with their extra mouse buttons. Maybe we'd pick up useful ideas from one another.

      17 votes
    22. A proposal for a purely electric-powered commercial airline industry

      Around 3-5 years ago, Elon Musk was teasing that he thought he had a clever idea for how to make electric-powered aircraft viable/profitable with, basically, current technology ... and he was...

      Around 3-5 years ago, Elon Musk was teasing that he thought he had a clever idea for how to make electric-powered aircraft viable/profitable with, basically, current technology ... and he was basically daring people to guess it.

      Regardless of what he actually did or didn't know, it got me thinking, and I came up with an idea. I thought I'd run it past the Tildes Team, see if it passes muster.

      My idea, in a nutshell, is to build airplanes with only 25%-50% of the battery capacity required for their flight (making them much lighter, with much more capacity for people/cargo) ... combined with, I'll call them Maser Cells on the undersides of the wings ... coupled with low-intensity maser beam emitters at all the major airports.

      Airplanes use a ridiculous amount of energy gaining altitude. For short flights, it can be upwards of 50% of their fuel spent just getting from takeoff to cruising altitude. My basic idea is for planes to get up to cruising altitude in large circles over the airport, powered by a combination of battery power and maser energy beamed up from the airport below. Then stay in a taxi-ing circle over the airport until the batteries are fully charged, before departing. Longer flights can plan their route to include one or more detours to pass over other major airports (or other recharging hubs, like the Tesla Supercharging network, but for airplanes) to recharge the batteries along the way.

      Trans-oceanic flights would be more challenging, perhaps requiring some kind of recharging hubs located midway in the oceans.

      To clarify, my "Maser Cells" are similar to traditional solar-electric power cells, except they are optimized to convert either laser or maser beamed energy into electricity. These things already exist (I forget what they're called), although getting them to a high-efficiency commercial-airline level of production, that would take some effort.

      There is, potentially, a lot of inefficiency in the conversion rates, from ground-generated electricity to ground-generated laser/maser, then on the plane, maser converted back to electricity into battery, then from battery into electric engines ... perhaps there are ways to reduce the amount of conversions necessary, or to increase the efficiency of the conversions. Or perhaps this is what kills the idea.

      Similarly, if this were actually implemented large-scale, to largely replace fossil-fuel-driven planes, we would be talking about a LOT of electricity requirements, a lot of laser/maser emitters at every airport, and a massive redesign of flight traffic management, to allow for hundreds of planes routinely in hours-long recharging flights over every airport, all the time ... potential choke-points at various recharging hubs (again, similar to what Tesla sees at overly-popular Supercharging stations on the ground) ... and doubtless lots of other issues I'm not thinking of.

      Anyway, though, that's the notion.


      ETA: This idea could be extrapolated to an extreme degree, with on-board batteries almost completely eliminated.

      With clearly defined flight corridors, and ground-based maser power stations located every 10-20 miles along, planes could fly their entire route on power beamed up to them, with only 20-30 minute battery capacity for emergencies.


      ETA #2: A person who owned his/her own rocket company might also consider putting the maser cells on the tops of the planes, and launching a bunch of solar-power-generating satellites, with maser emitters shooting power down onto them.

      I guess my main point is, if this maser-energy delivery system is even remotely feasible at a commercial level, there's a lot of potential.

      10 votes
    23. Do something

      TW: Violence and language. Just the other night I heard a native dude got capped, white nationalist on the other end, but nobody heard much after that. No news, no cops, no justice no peace, and...

      TW: Violence and language.

      Just the other night I heard a native dude got capped, white nationalist on the other end, but nobody heard much after that. No news, no cops, no justice no peace, and people wonder why we are calling to defund the police. Come to find out that dude had drugs, it was a meth deal gone bad.

      Ain't need to worry about it son, just ignore it and move on...

      Hold the fucking phone, why does it matter? You tellin’ me that dudes life ain't worth the crime blotter, an obit or some sort of after the fact reaction?

      But he had drugs man, shit happens...

      Man I hear this shit from privileged folk all the time but to hear it come from the streets... This dude didn’t matter because he had a problem, this human deduced to drugs and addiction, no longer my problem. I would say he’s just now a statistic but I’m not even sure if he’s that. This town is god damn silent on injustices and violent crime at that. 4 stabbings and 1 shooting, stuff that stokes fear, nobody goes near. Meanwhile all the townsfolk just cry about the homeless problem and drink their bougie beer.

      Dude you need to settle down you didn’t even know him…

      Motherfucker don’t tell me to settle down, don’t tell me it don’t matter because I didn’t even know him. How many white kids get shot in schools every day to get their obit, their memorial, their presidential postmortem? How about the victims in the towers? We went to fucking war over that shit, why did they matter? How can all lives matter when this dude over here lying on a slab can’t seem to become any sort of subject matter?

      Man that’s just how it is…

      No shut the fuck up, that’s not how it is. I refuse to accept an existence in this world where a life ain't worth the bullet that ended it. Don’t hide behind your cynicism and whataboutism because you just can’t be arsed to offer up any sort of emotional reactionism. That dude...

      Dude…

      No, you listen to me while I remind you what the hell humanity and empathy are. That dude had a family and friends, just like you, he had a life and a history and so much ahead of him too. He had ninety nine point nine percent the same genes as you yet you can’t seem to empathize that that could have been you.

      Dude then go fucking do something.

      6 votes
    24. Architecture for untrained software engineers (Python)

      Hey everyone, I've been programming for some time now but notice without any formalized education in CS I often get lost in the weeds when it comes to developing larger applications. I'm familiar...

      Hey everyone,

      I've been programming for some time now but notice without any formalized education in CS I often get lost in the weeds when it comes to developing larger applications. I'm familiar with the principles of TDD and SOLID - which have helped with maintainability - however still feel that I'm lacking in the ability to architect a properly structured system. As an example, I'm currently developing a flask REST API for a website (just for learning purposes). This involves parsing a html response and serializing the result as JSON. I'm still quite unclear as to structuring this sort of thing. If any more experienced developers could point me in the right direction/offer up their opinion I'd be very appreciative. Currently I have something like this (based - I hope correctly? - on uncle bob's clean architecture).

      Firstly, I'm defining the domain model. i.e the structure of the API response. Then, from outside in.

      1. Infrastructure (Flask): User makes request via interface (in my case a request to some endpoint)
      2. Adapters: request object checks if the request is valid (on the way back it checks if the response is valid) - Is this layer only for error handling?
      3. Repository: I'm struggling a bit here, AFAIUI this layer is traditionally a database. In my case however, where the request is valid, is this where I should handle the networking layer? i.e all the requests to return the website source? I'm also confused given at this stage I should be returning the relevant domain model, like an ORM, but as my data is unstructured, in order to do this I need to transform the response first. Where would it be best to handle this?
      4. Use Cases: Here I transform the domain model depending on the request. For example, filter all objects by id. Have I understood this correctly?
      5. Serializers: Encode the domain model as JSON to return from flask route.

      If you got this far, thanks so much for reading. I really hope to hear the opinions of more experienced devs who can steer me in the right direction/correct me should I have misunderstood anything.

      8 votes
    25. If you have pets, what is it like?

      This is a year old repost, BTW. I'll start, in a Q&A format. "What pets do you have?" I have 3 cats, almost in a large, medium small configuration. (M,F,M respectively.) I've named them Rodolfo,...

      This is a year old repost, BTW.

      I'll start, in a Q&A format.

      "What pets do you have?"

      I have 3 cats, almost in a large, medium small configuration. (M,F,M respectively.) I've named them Rodolfo, Penelope and Alfredo (PT-BR) (respectively), but rarely if ever, they're actually called by those names, usually we (me and my parents) call them bichaninho, bichanoca e bichanão. (also PT-BR, also the "bi" (pronounced like bee) can often be silent.)

      All of them are castrated.

      "For how long have you had them?"

      Around 8,7 and 2 years respectively.

      "what pets did you have?"

      I had another "small" cat, we never gave her an actual name, we called her minifufa. She died after 4/5 years of us finding her because her liver practically stopped working. We've buried her at our formerly grandparents' house (because the father went back to his home state 1700 kiliometers away and the mother also died, from cancer.)

      We also took care of a cat who accidentally fell into our house because a part of the roof is made of some less resistant stuff I can't really name. She was female and we took care of her for about 2 weeks.

      "What are they like?"

      Rodolfo is pretty calm and dependent, he often wants to be petted, sometimes late at night. Sometimes I do that, sometimes I hug/squish him.

      Penelope if like that, but more because she unfortunately has some terrible breathing. We don't know what's in her lungs and why it got there, so it's not going away. It makes her the most frail :l

      Alfredo is the most aloof and often gets into fights with the other 2 cats. He seems to be the most hungry, despite being the smallest cat.

      15 votes
    26. Wargasm - Spit (2020)

      Apple Music - https://music.apple.com/us/album/spit/1515933495?i=1515933506 Spotify - https://open.spotify.com/album/4N8vRR39A9ttCbAVW5Gztx YouTube - https://www.youtube.com/watch?v=aigeil9HSWo...

      Apple Music - https://music.apple.com/us/album/spit/1515933495?i=1515933506
      Spotify - https://open.spotify.com/album/4N8vRR39A9ttCbAVW5Gztx
      YouTube - https://www.youtube.com/watch?v=aigeil9HSWo

      Newest single from relative newcomers Wargasm. The London duo have nothing to do with the old Boston, MA thrash outfit of the same name. These two (Sam Matlock and Milkie Way) instead employ a lot of late 90s industrial and nu-metal guitar riffs with some poppy hooks in the instruments. Mix in the dueling vocals of Matlock's raw, unclean shouts and Way's silky smooth, sometimes bubblegum pop level, harmonies and you get a sort of blender of genres that kind of defies typical categorization.

      The two cut their teeth shoving some pop songs through the jaws of their style (like N.E.R.D.'s Lapdance). They've started putting out originals lately. Spit is probably their hardest song so far, eschewing some of the more poppy elements of their first releases.

      5 votes
    27. Reduction of screentime leading to positive changes in daily life

      Hi, I think I have mentioned it here a few times, but I (used to) spend A LOT of time on my phone. I’ve tried to reduce it in the past with more or less success, and recently without any...

      Hi,
      I think I have mentioned it here a few times, but I (used to) spend A LOT of time on my phone. I’ve tried to reduce it in the past with more or less success, and recently without any university work (I finished all exams half a year ago) and varying amounts of work as a freelancer, it crept up to 6+ hours of screen time per day. (this is excluding watching stuff to fall asleep, which I want to reduce but I am taking one step at a time) - So it’s a lot.

      I tried a lot of stuff, reducing the hours, by setting limits for apps, turning off notifications, but that just leads to me extending the time by entering the password myself, or checking my phone more often because I am curious about whether someone texted.
      So last week Wednesday some stuff changed. I took my first long bike ride in a long time, and that day I felt really good, I still had 5 h screen on time that day though. The next day I turned off notifications for Whatsapp, but I left the indicator next to the app on, so I could see that I have messages quickly, I also decided to just force myself to wait a bit until replying to people. Also my girlfriend is the only one that knows my screentime passcode now, so I can't sneakily extend my app time

      That Thursday my screentime was 3h 16 minutes. I was hooked, I wanted to keep my time as low as possible. Since that Thursday, I have not hit the 4h screen on time once. Yesterday I was at 3h 59 min... it was an exhausting day though (Spending 1.5h at the waiting room at the doc) and I wouldn’t have blamed myself, but I still didn’t want to hit the 4h mark. Last Thursday my daily rhythm has changed quite a bit. I got Ring Fit Adventure this week, and I have done sports 4 times this week, I started to pick up playing guitar (literally got one yesterday) and ukulele again, and I just try to find stuff to do that does not involve my phone. I also played Persona 5 Royal on my ps5, I know it’s screen time but I feel less bad about it because I don’t take my PS everywhere with me, and these were the first days I have taken off in a long time… Next, I am trying to maybe work through my books that are on my backlog, finally finishing some more again. (my girlfriend gave me the book "South Sea Vagabonde, and I am meaning to read it, and I am also listening to the Audiobook "The Shallows")
      One change just caused so many good changes. I am stoked and looking forward to how low I can bring my average, I know 4h per day is still a lot for most people. I am aiming at sub 3h next ( I had that once this week).

      This scene from Bojack has been my mantra since then: https://www.youtube.com/watch?v=R2_Mn-qRKjA

      It really does get easier, too. Today I went biking and I managed to go much longer without breaks and I feel way less exhausted.

      I just wanted to share my experience somewhere, maybe someone else is on the same path and this helps.

      22 votes
    28. Which gaming account should I get/setup for my teen daughter?

      Here's the background... So, I tend not to play video games at all any more (not for at least 15 or 20 years). My teen daughter wants to get a Playstation gaming console...but it seems less about...

      Here's the background...
      So, I tend not to play video games at all any more (not for at least 15 or 20 years). My teen daughter wants to get a Playstation gaming console...but it seems less about playing and more about socializing with her friends. Her friends - while i promised my partner not to call them 'idiots' - are not really the best decision-makers and they're quite affluent (and we definitely are not affluent), so their poor choices usually never impact them. (I think it is less about being teens, and more about them being rich, entitled poor decision makers, because my daughter and a few other poorer friends are actually good kids who know that we can not get all the things.) Here's an example: all of my daughter's rich friends will ask their parents to buy them widget X, and so of course my daughter wants one so she can connect with these rich teens. For these rich kids, after they inevitably abandon widget X, there is no issue; they merely drop them off in one of the rooms in their mini-mansions. But for me, i can not always afford to buy widget X and then have my daughter abandon stuff in our little, meager but love-filled house. (Please if possible let's avoid the topic of how I'm raising my daughter, because all of the parents of us poorer kids in town have the exact same issues with our kids.) Now, we come to the part about my daughter wanting a playstation...I don't mind saving up for a PlayStation - especially if she'll use it...However, since she really only wants it to socialize with her rich friends via a couple of games, i was thinking on getting a PC/gaming rig (not as expensive as PS or some sort of AlienWare) instead of the dedicated gaming console, but still plenty usable for some games...So that, after some time if she abandons it (because for example her friends have migrated to other avenues of socializing), i can always re-purpose the machine. In my mind it seems a more worthwhile investment. (I'm a software guy mostly, but over the decades, almost every machine i have/own has been franken-built by me...so i know just enough hardware.) Now, if I go the route of a PC/gaming rig, can i just sign her up for online gaming accounts like PlayStation Network, and that will suffice for her to use her PC but still connect, say via PSNetwork, with her friends playing PS games?? (To help, i should clarify the games these teens play are fortnight, minecraft, and grand theft auto...I think GTA does not support in game chat/comms with friends, though i could be wrong.)

      So, is it possible for me to sign up my daughter on an online gaming account - like PS Network - that would allow her to communicate with hr friends? And, if so, which gaming network should I set up an account, PS Network, Steam, etc.??? Thanks in advance for any suggestions!!!

      15 votes
    29. What can we do to support voter turnout in the US elections this fall?

      There is an important election in the United States this fall, and we've all heard a lot of concern expressed about efforts to suppress the vote. Under the shadow of all the other issues we're...

      There is an important election in the United States this fall, and we've all heard a lot of concern expressed about efforts to suppress the vote. Under the shadow of all the other issues we're currently facing as a society, I know a lot of people who are asking "what concrete actions can I take to make a difference?" It seems like helping to get out the vote is one very important action.

      So here's a question to the Tildes community: what suggestions do you have about how we (as individuals) can help get out the vote this fall? Big or small, donating money or doing physical work -- what can we do?

      15 votes
    30. Fuck you, COVID. I'm in love!

      My virtual relationship is slowly becoming part of Tilde's lore. We met on Tinder shortly before the pandemic and almost met, but I got a little paranoid after dropping my sister at the airport....

      My virtual relationship is slowly becoming part of Tilde's lore. We met on Tinder shortly before the pandemic and almost met, but I got a little paranoid after dropping my sister at the airport. Maybe that was a good thing, Tinder dates are fleeting and we tend to pass judgment too quickly. This way, we were forced to get to know each other. I had other WhatsApp courtships going on, but they all faded out. We had little in common and nothing to talk about. But Lucy (let's call her that) is special! Smart, funny, and extremely curious about every part of my little nerdy universe. She also has interests of her own and is a simple soul -- we don't need to talk about deep stuff all the time. Lucy is deceivingly shy and her emotional world is deep, requiring some incantation to access. From my point of view, it's like deciphering an adorable puzzle. I love her, oh oh god, I love her so much it hurts in my bones. I told her that, and the response was a bit concerning. She felt pressured to say the same (she wasn't). Days later, she reciprocated without any coercion whatsoever. What a relief! hahaha

      We are now in a relationship. We speak every day. We "fight" (or the cute version of fighting new couples have). We do sexy stuff online.

      Because I was in a trauma center last Friday (I was freaking hit by car hahaha), we cannot see each other for about a week. After that, we decided I'll spend 14 days at her house (and possibly more if everything goes okay).

      Today I was at the mall (I know I shouldn't, it was a necessity!) and sent her the message: "I was just walking at the mall and were hit with the realization of how much I love you".

      So that's where I am.

      Anyone wanna share more COVID love stories?

      28 votes
    31. Novel idea: The Apartment

      Just finished (re-)watching the Friends TV series ... End of the last episode, sitting in the empty apartment (Joey: "Has it always been purple?" Phoebe: "Do you realize that at one time or...

      Just finished (re-)watching the Friends TV series ... End of the last episode, sitting in the empty apartment (Joey: "Has it always been purple?" Phoebe: "Do you realize that at one time or another, we've all lived in this apartment?")

      Got me thinking, more as a plot contrivance than the actual plot, a story about an apartment, spanning a century or more, and the various people that lived in it, jumping back and forth across time, linking them together through history ... perhaps even, a la "Ship of Theseus", spanning multiple centuries and multiple homes/dwellings that occupied the same space.

      So specifically, I'm wondering if anyone can think of any novels that adopt this idea, or anything similar, as a primary vehicle for their storytelling?

      I have a vague recollection of a short story or novella in 2ndary school, about the life of a redwood, and the various people and animals that lived in and around it over the centuries ... and also I recall reading "A Winter Tale" by Mark Helperin -- a semi-fantastical novel about the city of New York ... oh look, apparently, they made it into a movie, too.

      But those two are the only examples I can think of that come close to this idea.

      PS: I love to write fiction, and someday I may even finish a novel ... but generally, I get about halfway through, figure out how it's going to end, and then lose interest ... so if anyone with more ambition likes the idea, you're welcome to it.


      ETA: I'm not looking for the 10,000 variations of "oooh, haunted by the ghost of a person that died here 20 years ago". Broader, covering a longer timeframe, multiple substories interwoven into the same living space, you get the idea.

      10 votes
    32. Short Story - Segment from a Microscope RPG

      For context, Microscope is an RPG system where you collaboratively write the history of a world. It's focused entirely on collaborative storytelling, rather than dice-rolling (there are no dice)....

      For context, Microscope is an RPG system where you collaboratively write the history of a world. It's focused entirely on collaborative storytelling, rather than dice-rolling (there are no dice).


      So I wrote a Dictated Scene for our world, and I was rather proud of it, so I thought I'd post it here since it almost stands on it's own. I'm curious what other people think and what kinds of questions it provokes about the world it inhabits.


      Meris had played in the clearing all her life. Every time she went to play by herself the little Jima would come out and sit on it’s rock to watch her. She always talked to it, though it never talked back. It just liked to watch with it’s tiny eyes, wary of approaching shadows that might scoop it up.

      Under the Jima’s rock was where Meris kept her treasures. Well some of them where the Jima’s treasures. Meris had found all of the treasures, but she let the Jima watch them so it seemed only fair that she let him keep some of them. Her favorite treasures were the small crystals no longer than her finger, though her fingers weren’t very big since she wasn’t very big yet. They were probably half as big as Momma’s fingers.
      When the wind blew hard enough on some days, like right before Momma made her come inside before a storm, the crystals hummed. Dozens of little humming voices, like a choir singing a song just for her.

      On some mornings Meris went to the market with Momma. She liked listening to people in the market, especially when she heard them use new words. Sometimes when she repeated the new words, Momma would scowl at her, which usually just made Meris get the giggles.

      The last day that Meris went to the meadow, she was repeating some new words she had heard an angry man yell at someone. As Meris looked through her treasures, she counted to make sure they were all still there. As she picked up her favorite treasure, it’s shiny crystal facets cast spots of rainbow light around her. Meris repeated her new words one final time, and then was silent.

      When Momma found her, the sun was low and the last rays of light were still shining on Meris, sitting unnaturally still, looking down at the crystal she held in her hand. The last rays of sunlight were still striking the small crystal, sending a few small prisms of light across Meris’ motionless face, frozen perfectly in marble.

      Momma took the crystal from her daughters hands, tears streaming down her cheeks as she asked the gods what she had done to deserve this, what her daughter could possibly have done to displease them. She pleaded with the gods to return Meris to her, gripping the crystal tightly in her fist. As her desperate Words reached toward the heavens, the crystal suddenly emitted a single clear Tone, and all the grass around became frozen and still.

      She ran as fast as her legs could take her, the crystal still gripped tightly in one hand.

      3 votes
    33. Cloud storage recommendations?

      I'm thinking of paying for some cloud storage and I'd like to hear your recommendations and experiences with cloud storage providers. I'd like the best bang/buck and preferably something that...

      I'm thinking of paying for some cloud storage and I'd like to hear your recommendations and experiences with cloud storage providers. I'd like the best bang/buck and preferably something that works well with Linux (Void is my current distro). I had been using Keybase as they offer 250GB of space for free(?), though I recently learned they've been acquired by Zoom which...concerns me. Plus, I can't seem to get the filesystem mounted on Void for some reason =/.

      Here are a few I'm considering:

      Major Players

      • Google One: $20 a year for 100GB

      • Microsoft 365: $70 for 1TB of storage + Microsoft productivity suite (that I probably won't use all that much)

      Out of these options, I think I'd prefer Microsoft at this point.

      Smaller Players

      • Cloudamo: $25 a year for 100GB. Bonus that it's built on open-source tech and looks pretty flexible.

      • pCloud: I've been seeing this recommended in my current search for a provider. But... seeing as of this posting the website is down, I'm not filled with confidence.

      • Wasabi: More of a DIY option, it'd be ~$72 a year for 1TB.

      Cloudamo looks the most promising, here.

      Complete DIY

      • I have a 2TB drive that I guess I can expose to the Internet as a fileserver. Dunno what my ISPs policy on this is and I wouldn't be confident in its reliability.

      Well, those are a few options. Got any more?

      24 votes
    34. What kind of drunk are you?

      In the research article, "Searching for Mr. Hyde: A five-factor approach to characterizing 'types of drunks'", scientists identified four types of clusters: Cluster 1 - "Hemingway" the largest and...

      In the research article, "Searching for Mr. Hyde: A five-factor approach to characterizing
      'types of drunks'", scientists identified four types of clusters:

      • Cluster 1 - "Hemingway"

      the largest and included those who reported only slightly changing when intoxicated. Specifically, members of this group reported decreasing less in Conscientiousness (e.g. being prepared, organized, prompt) and Intellect (e.g. understanding abstract ideas, being imaginative) than the rest of the sample. Notably, two previous studies have found that, on average, these two factors reportedly decrease the most with intoxication (Winograd et al., 2012, 2014), so the moderate decreases demonstrated by this group make its members stand out as being ‘‘less affected’’ than drinkers in some of the other groups, much like the author Ernest Hemingway, who claimed that he could "drink hells any amount of whiskey without getting drunk".

      • Cluster 2 - "Mary Poppins"

      composed of a small number of drinkers (approximately 14% of the sample) who are particularly Agreeable when sober (i.e. embodying traits of friendliness), and decrease less than average in Conscientiousness, Intellect, and Agreeableness when intoxicated. Accordingly, members of this cluster reported experiencing fewer overall alcohol consequences than those in the Mr. Hyde cluster (described next). The Mary Poppins group of drinkers essentially captures the sweet, responsible drinkers who experience fewer alcohol-related problems compared to those most affected.

      • Cluster 3 - "Mr. Hyde"

      defined by larger than average intoxication-related decreases in Conscientiousness, Intellect and Agreeableness. In other words, members of this group, much like the dark-sided Mr.Hyde, reported a tendency of being particularly less responsible, less intellectual, and more hostile when under the influence of alcohol than they are when they are sober, as well as relative to members of the other groups. In the significant model associating overall negative consequences with cluster membership, the Mr. Hyde cluster drove the association. This was the only cluster that was statistically more likely to experience alcohol consequences, suggesting that individuals in this group not only embody less savoury personality characteristics when drunk, but also incur acute harm from their drinking (e.g. experiencing a memory blackout; beenarrested because of drunken behaviour; see Hurlurt & Sher,1992, for a full list of YAAPST items)

      • Cluster 4 - "The Nutty Professor"

      tended to be particularly introverted when sober but demonstrated a large increase in Extraversion and decrease in Conscientiousness when drunk, relative to their sober levels
      of these traits. They also tended to report having the most overall discrepancy between their reported sober and drunk FFM traits, as indicated by the lowest ICC of the four clusters (0.05). Surprisingly, membership in this cluster was not associated with experiencing more alcohol-related consequences within the past year. So, although the personality change displayed by ‘‘The Nutty Professors’’ may be the most dramatic, this does not appear to be associated with elevated harm – at least in terms of the alcohol-related consequences assessed in this study.


      Although I don't drink, when I used to I would be the most extroverted person in the room (or gaming lobby). I distinctly remember making friends with everyone that I encountered online and in-person. Cue the next morning when I have to cull all the new contacts I received because I knew I would never talk to those people again unless I was drinking. So I guess I am a nutty professor since I am always the most introverted person in the room sober. This was an interesting study, and I think it is interesting to note the individual differences of people when inebriated, and what causes those individual differences.

      16 votes
    35. What's a free RPG platforms to play with my virtual girlfriend?

      As some of you may know, I now have a virtual girlfriend. I also suffered an automobile accident. So yeah I'm kinda fucked and my movements are restricted. That's not something I planned, but it...

      As some of you may know, I now have a virtual girlfriend. I also suffered an automobile accident. So yeah I'm kinda fucked and my movements are restricted.

      That's not something I planned, but it happened and we're getting out of things to do. There's not a lot going on our lives to talk about either. But we love each other (I think?) and wanna spend time together online.

      She's an actress and there will be another player friend, so RPGs are likely a good idea and she's very open to it. I think she wants to be some kind of cool illusion witch, so the scenario will have to be medieval. I'm also a fan of RPGs and narrated games on the Cthulhu universe. Not the kind of thing I'd use to woo a woman.

      All my games have been presential. I know of the existence of Roll20, but (1) it looks big and comprehensive and I'm super lazy (2) I think I could probably go with something way simpler. I don't care much about maps, miniatures, or anything advanced. I'd be DMing and games are abstract by nature. A super simple system like Risus (but maybe a bit complex) might be okay, or probably a very slimmed-down version of the Storytelling System. I'm open to suggestions regarding system, I'd just like to point out that I am literally ADHD so most things people consider light and easy to follow are a nightmare for me. On the other hand, I'm a very creative master a player and this helps me quite a bit when it comes to interpretation!

      I need a system that :

      • is free without caveats (or just a minimal and not at all annoying caveat)
      • store character sheets and calculate their evolution
      • performs rolls
      • is online, lightweight (our machines are quite weak) and possibly mobile friendly
      • simple and easy to use for someone with zero experience in RPGs (her)
      • has no video or audio capabilities. Seems unnecessary since we're always on WhatsApp.
      9 votes
    36. Would any Tilderino be interested in tutoring me in programming?

      I could have post this on Reddit but in my experience, nothing really happens over there since things are too impersonal. I realize that's not an enticing proposition for most people since...

      I could have post this on Reddit but in my experience, nothing really happens over there since things are too impersonal.

      I realize that's not an enticing proposition for most people since programmers are usually busy people, but I figure I'd give it a shot. I believe many people that already interacted with me have some idea about my personality. Besides being a stickler for logic, I'm very flexible and eager to learn and make it a habit to force myself to admit when I am wrong. I had to abandon software engineering college because of financial concerns and this hurt me quite a bit, not just because of the content, but because of the social stimulus from my peers.

      I already have some knowledge mostly in Python and basic C algorithms, from the basics until rudiments OOP. Math is not my strong suit, but I don't hate it either and I am very fond of logic (including philosophy). I'm also very good at Googling and reading documentation, so I wouldn't give you too much trouble.

      I'm proficient in Linux/Unix (as an advanced user, not an administrator). I'm comfortable in the command line and an enthusiastic user of Emacs (but I can use whatever you want of course).

      It doesn't even have to be Python, just anything you're comfortable teaching at a beginner level that works on a Mac (and later n a Linux Machine). And is also wouldn't have to be super intensive or frequent, being unemployed (hahaha) I can work around any schedule. I just need some human contact with a nice dude or dudette that cares about imparting knowledge.

      My English is pretty good in writing and understanding but I do have a thick accent -- I believe it's understandable though.

      I'm super shy and video is not a requirement, but it might be nice.

      I'm also a slow learner and have ADHD, so you might need a little patience.

      Anyway, here I am asking for help!

      EDIT: dear Tilderinos, you're awesome and I love you all. I'm also aware of many if not most learning resources for self-didact beginners programmers on the internet -- especially if they use Python. The reason I'm posting this is that I am failing at learning by myself. I welcome ALL suggestions with great gratitude, but this is not the purpose of this thread.

      EDIT2 VERY IMPORTANT!!! I’d be willing to teach Portuguese or anything else I happen to know in exchanging for the tutoring!!!!!!!

      EDIT3:

      Thank you very much everyone. I'm very sorry tor taking so long to answer. I had to make a decision about my study plans for 2020.

      Thing is, back in 2019 I was doing pretty well on a software engineering course at a local private university. But money got tight and I had to drop out. Since then I've been trying to make it on my own, but after more than a year I came to the conclusion that this is simply not going to work. At the university, I was at the top of the class. By myself, I'm a lazy bastard with half the IQ. Go figure.

      So I decided that instead of trying force my way into learning by myself, I'll just study for the Brazilian national exam and get into some great public educational facility that will most certainly provide me a better education for free.

      I took the exam before without studying, and my grade made the cut. So I'm confident that if apply myself this time I'll be able to enter at least one of three major public universities in my city that offer dozens of IT-related courses.

      So I'm laying off from programming until at least January 17 and devoting myself entirely to the exam.

      Cheers!

      18 votes
    37. I'm stuck in an endless loop

      For several years now (4-5-ish, but hard to pin down when it started), I have been stuck in a cycle of enervation/depression. I don't really like to use the word 'depression' to describe this,...

      For several years now (4-5-ish, but hard to pin down when it started), I have been stuck in a cycle of enervation/depression. I don't really like to use the word 'depression' to describe this, because in my youth (I'm in my early 50s now), I suffered from serious bouts of extreme depression, and by comparison, this is a walk in the park ... so I've gotten into the habit of colloquially referring to is as "ennui".

      The duration varies (a lot), but the cycle is most often roughly 7-14 days long, where 60-70% of the time, my energy, motivation, my ability to focus on and accomplish tasks ... all goes into the toilet, and I spend most of my day reading news, surfing the 'Net, playing video games, watching re-runs, walking about town with my dog, or even just sleeping. The other 30-40% of my time, I feel good -- clear-headed, focused, motivated and energized -- and I spend most of this time catching up on all the stuff I neglected during the ennui phase, and making Grand Plans for the future.

      It is hard to tell, objectively, whether I am getting better, worse, or just treading water ... in part, because the cycle varies enough that it's hard to see any clear trends over anything less than 6-8 month time frame ... but more so because my ability to objectively assess my status is so colored by the cycle itself ... when I am in one of my ennui phases, it feels like I am getting worse or, at best, maintaining. When I am in the manic-ish phase, I feel like I will never feel unmotivated again, and I must often remind myself that it is temporary, and in another day or 3, I will be back in a funk. As objectively as I can be, however, I think I am actually treading water or, possibly, getting gradually worse at a very glacial pace.

      I know the "up" phase of my cycle sounds a lot like the manic- part of a manic-depressive bipolar thing. Maybe it is; as I said, it is hard to be objective. That said, though, I am really, really confident that, prior to the beginning of this, ~5-ish years ago ... that "manic" phase was my normal state of mind. I used to be a very focused, productive individual.

      So ... I've tried many different things to address this. Assorted doctor visits have mostly concluded that either they don't know what the problem is, and/or, I'm exaggerating/imagining it (no doctor has explicitly said this -- it is my interpretation of "we can't find anything wrong with you"). I've tried increased exercise, more time outdoors, more sleep, less sleep, meditation, a wide variety of changes in diet, vitamins/minerals/supplements, etc. I've lost over 40 lbs. I'm currently trying (for a 2nd time) large daily doses of turmeric, and contemplating trying (also for a 2nd time) a round of tDCS self-treatment.

      For context, I am right now on an upswing, coming out of my latest "ennui" phase and feeling optimistic and productive.


      I should also add that I have another issue ... one that I believe is unrelated, but sounds similar when I describe it. This dates back to about 15-16 years ago, and is another thing I have seen many doctors for, and tried various things to remedy. In a nutshell, about 15 years ago, I got dumber. Prior to that, my ability to learn and remember, my executive functions, my ability to deduce, my ability to focus and prioritize and plan ... were all much better.

      Over the course of 12-18 months, I lost a lot of my mental functions. For anyone who has read it, it felt a lot like the tail-end of the book "Flowers For Algernon". The simplest quantifiable example I can give of this is the notion of ... how many things are on your mental shopping list (stuff you need to get at the grocery store) before you realize you better write it down? For me, prior to this loss, my magic "I'm gonna forget stuff if I don't write it down" number was around 12-13 items, that I could fairly confidently remember. Afterwards, that number dropped to around 3.

      At that time, my doctor found a (benign) lump in my throat (a goiter), and ultimately, they removed half of my thyroid. After they removed it, over the course of 6-12 months, my mental faculties improved again, but I feel to this day, that they never returned to anything close to what they were before. My mental "shopping list" number today is around 5.

      Multiple tests since then have repeatedly confirmed that my half-of-a-thyroid is fully getting the job done, and I do not need any kind of supplemental hormone treatment -- with the possible exception of testosterone (ps: I'm a guy), which I tried for a little while -- and dammit, it helped, too -- but then I freaked out and quit once I started reading about side-effects.


      I am writing this explicitly looking for suggestions and advice. Keep in mind, though, that (I'm guessing here), 80-90% of my responses will be "already tried it, didn't help".

      In advance, danke y gracias.

      16 votes