Threads for Blintk

  1.  

    This is cool. How do you have the idea to do something like this?

    1. 3

      Work stuff, understanding the backend systems at my new job and on my creative time I’m messing around with webgl and sign distance fields so I can do some cool shader stuff with letters. On a Radeon Pro 560X I’m rendering 8,820,000 instanced characters (i think) before the framerate drops below 60fps. So I have a lot of headroom to play with. https://meatdumpling.com

      1. 22

        idk, depression or something.

        1. 5

          same. hope things get better for you, as meaningless as that sounds coming from an internet stranger.

          1. 5

            Depression high five

            1. 4

              Wanna go to an olive farm? Freshly pressed olive oil + salt on a baguette is a special thing.

              1. 2

                I’d love to, if there were one within 1000 km of me.

            1. 12

              Hot take: Could font designers please just agree that the only valid way to write 0 for technical fonts is with a dot in the middle? 0-with-nothing is irritatingly ambiguous with O, 0-with-a-slash is irritatingly ambiguous with Ø, and I’ve never seen the 0-with-broken-edges actually used outsize of Brazilian license plates.

              1. 7

                Just pulled some statistics from what people download: https://neil.computer/notes/berkeley-mono-font-variant-popularity/

                The dotted-zero is indeed the most popular.

                1. 7

                  I love slashed zeroes!

                  I’ve never used Ø or had to.

                  1. 17

                    What a strange coincidence.

                    1. 7

                      An Ø bit my sister once.

                      1. 5

                        Ø bites cån be very painful!

                        1. 3

                          Yes but it’s not common for islands to bite.

                          1. 2
                    2. 4

                      Nah, I like my slashed zeros. You just need properly distinguishable characters. Many font designers get it wrong.

                      1. 2

                        Or just let you choose. There were a few things about those fonts that bothered me initially, but with customisation they became my favourites.

                        1. 7

                          I’m at the sad and tired point in my life where I don’t want things where every nuance is customizable, I want things where the defaults are pretty good. :P

                        2. 1

                          What is your opinion on writing a 0 with a backslash, like in Atkinson Hyperlegible?

                          1. 1

                            Never seen it before in practice! I suppose I have no objective complaints. I might worry a little about dyslexic legibility, but no practical experience with it.

                          2. 1

                            Yeah, I agree. my eyes are pretty bad, and I struggle to read code at even 14pt sometimes. I pretty much exclusively use Source Code Pro as my main programming font because it has the most distinctly different letters and the dot-in-the-middle 0 and NO LIGATURES.

                          1. 8

                            I am seriously impressed by the quality of this font. Very regular, very readable; I would put it at the same level as PragmataPro for coding.

                            Vertical alignment is correct for arrows (<, -, >, =…). It is possible to choose among multiple styles of zero characters. I have not seen any line height issues in Emacs and in XTerm.

                            Unicode coverage could be better, but this typeface is brand new, so I guess it will improve.

                            1. 5

                              Thanks for the kind words, this is how it looks on iTerm: Berkeley Mono iTerm screenshot.

                              I will get better over time with new glyphs and features. We’re planning for a condensed version next.

                              1. 4

                                Honestly, you may want to try Input. You can modify it a bit to suit your tastes. I use it simply because it seems to make it very easy to distinguish between curly braces, brackets, and parentheses at very small font sizes, at least better than any others I’ve seen. there’s free licenses in addition to commercial ones so I don’t feel much guilt plugging it.

                                Love it.

                                https://input.djr.com/preview/?size=17&language=clike&theme=default&family=InputSans&width=200&weight=200&line-height=0.9&a=0&g=0&i=serif&l=serifs_round&zero=slash&asterisk=0&braces=0&preset=default&customize=please

                              1. 32

                                That logo is generic and forgettable as hell. The mo-zilla lizard was way better. People on the whole don’t have taste. I have nothing important to note just feels so commercial.

                                1. 3

                                  In my opinion, we only get to complain about something becoming commercial if we’ve donated time or effort to the project. Commercial things survive, and absent contributions, important things should do what it takes to survive.

                                  1. 11

                                    I think people should feel free to constructively criticize regardless of whether they’ve contributed. Imposing a barrier to critique doesn’t really help.

                                    1. 1

                                      Nah, that part was voted on by the users. We screwed it up, not them. So I’m going to complain.

                                      1. 1

                                        Unfortunately, commercial things do not necessarily survive. I am not a web developer, so I have little need for MDN. I do use a web browser every day, however, and Firefox is the last serious bulwark against a Chrome monoculture. Mozilla should stop shuffling deckchairs around and let us fund the browser.

                                      2. 3

                                        If the logo being mediocre is all there is to complain about in it, they’ve done pretty well overall. :)

                                        1. 1

                                          I can get with that. it was the only thing that struck me as bad out of the entire redesign.

                                      1. 1

                                        trying to recover from food poisoning, alternately staring at a wall and at my computer with nothing coming to mind.

                                        1. 6

                                          I need to learn OpenGL. Hard to say what else I’ll need, there’s little sense in making plans.

                                          1. 1

                                            OpenGL ES or something like OpenGL 4?

                                            1. 1

                                              The oldest reasonable thing that will work on Linux desktops and macOS. I need it for rather simple texture transformations, because those are incredibly slow on a CPU, but I like to have deep understanding.

                                              1. 2

                                                Potentially useful resource on writing shaders? https://thebookofshaders.com/

                                                As far as my experience has gone, most of the buffer management stuff for OpenGL is pretty boilerplate (it’s just slinging buffers to the GPU and sometimes fetching results back), so most of the interesting work happens in the shaders.

                                                1. 1

                                                  Also if you don’t need realtime rendering since it sounds like you might be doing batch processing, it could make sense to just use gpgpu features like OpenGL compute shaders or even OpenCL.

                                                2. 2

                                                  People say that the book of shaders is good. I’ve found that going to shadertoy and tweaking some simple shaders heavily and googling built in gl mathematical functions to understand the ways I can modify the colors and point positions to be more interesting.

                                            1. 8

                                              I’ve been using gRPC for about the past 4 years and by far the most important thing I wish we had understood at the outset is that you can use gRPC with a variety of other encodings.

                                              Protobuf is a mess (https://reasonablypolymorphic.com/blog/protos-are-wrong/) and you should avoid it if at all possible; you can still use gRPC without it.

                                              1. 4

                                                I’ve been working with Protobufs for a few years now. The author’s criticisms are valid, but I’d change the emphases. The formal “niceness” of the type system has generally not been an issue in my usage. Optionals, enums, and submessages using ints and strings are what are used for practically everything. What is more of a problem is that every field in a Protobuf definition is usually chosen to be an optional, and, I believe, an optional by default in the latest version. This is best practice to prevent deserialization failures if the field is omitted, especially if the send-side schema is a newer version that no longer requires the field. Optionals make you check for the presence, which at best is annoying and at worst encodes a brittle schema defined in code. It also makes it hard to use the type in interior code as you’re not sure which fields are filled out. The author touches on the problem of having transport and internal types; optionals pose a major problem with using Protobufs for internal types. At the crux of it, I think the problem is Protobufs is implicitly supposed to be used for senders/receivers with evolving versions of the schema, but doesn’t provide any extra features to make that process smooth. There’s been plenty of horror stories with systems crashing b/c mismatched proto expectations.

                                                1. 2

                                                  Um; I can only say since I understood it, I see all-optional as an important feature, not bug. To me it conveys the same semantics as the “zero by default” semantics of strict fields in Go. The trick is to define your fields in a way where a zero value is a perfectly sensible and meaningful common default. Now, for some values like string names zero (empty string) might not make much sense - but then you probably need more complex validation anyway, so e.g. some validation annotations with a code generator for them (protoc-gen-validator or what was the name) might be the next useful step. And for even more advanced ones, you have to check them in code anyway, unless the expectation is that protobufs would be a formal proofs language. That said, as described in https://aip.dev/203, there are annotations like ‘REQUIRED’, though they have quite nuanced semantics, and those make quite some sense to me as such. And here I do indeed miss not seeing an automatic protoc generator for their validation - but no efully one will appear sooner or later (and I sometimes wonder would it be so hard to write myself?)

                                                2. 2

                                                  I wish I’d known this before I left my last gig.

                                                  I also dislike protobuf, but although it’s a mess I think the one exception to “you should avoid it if at all possible” is if you’re using java on both ends. That doesn’t make it any less of a mess, but it’s mostly a mess in exactly the same way that the java type system is a mess so it ends up being beneficial.

                                                  Or at least that’s what I heard from the cloud devs doing java on the other (unfortunately only theoretical) end gPRC interface that I was working on from Rust.

                                                  1. 3

                                                    My experience comes from using it with the JVM on both ends (but Clojure rather than Java) and we still had a lot of headaches. In particular the part where you send it a nil in an integer field and it silently converts it to zero is mind-bogglingly bad. Or where you send a negative number in a field that’s defined as an unsigned int and it silently accepts it; what the hell.

                                                    1. 2

                                                      sounds like annotating deserialized stuff in kotlin as non-null, only for the deserialization system to not care about that for obvious reasons - those are the times I miss rust so much

                                                      1. 2

                                                        Woof. I guess I was slightly more fortunate. We ended up only sending and receiving with Rust, so everything was super explicit to get things into the types needed by the generated protobuf message structs.

                                                        So many messages with foo and foo_is_set fields though.

                                                    2. 2

                                                      Just curious if you recommend any specifically? I’ve tried once or twice to look into gRPC, but each time I was put off by protobuf.

                                                      1. 2

                                                        We use EDN at work to communicate between Clojure services; that’s the only one I have experience with, but I’ve heard people like msgpack too.

                                                        1. 1

                                                          Would you link any references to using gRPC with EDN or msgpack encodings?

                                                          1. 1

                                                            I believe you guys have multiple good reasons so could you tell me why you don’t just use JSON with a schema validator over this? I find the inspectability, flexibility and interoperability of JSON makes it a better choice over anything else so in my attempt to not be a frog in a well could you let me know under what constraints it makes more sense to use gRPC?

                                                            1. 2

                                                              JSON would have been a big improvement over protobuf too, but being able to seamlessly encode UUIDs and Dates directly was more important to us than being able to support non-Clojure services.

                                                              I’m only talking about the encoding within gRPC; whether to use gRPC vs REST is a completely different question that unfortunately was made above my pay grade. If it were up to me we would have used EDN over REST.

                                                              1. 1

                                                                Got it. Thank you. Maybe they have some magical wisdom I’m missing.

                                                      1. 9

                                                        You can have very nice “easter eggs” and properly document them (but do they still deserve that name then?).

                                                        For instance, I like the Redis command “LOLWUT”: https://redis.io/commands/lolwut

                                                        1. 4

                                                          Yes. Who says easter eggs should be undocumented? As long as they are documented and require a specific input that is never used in normal program operation to fire, I have nothing against them, even in “critical” projects (critical is subjective, of course).

                                                          1. 3

                                                            the teapot is another nice example of this.

                                                            1. 2

                                                              418 forever, I’m with you!

                                                              1. 2

                                                                I use the HTTP 418 response code in a critical project—my gopher server to inform wayward web bots they’re not talking to a web server. It’s great for that.

                                                            2. 3

                                                              LOLWUT wants to be a reminder that there is more in programming than just putting some code together in order to create something useful.

                                                              I love this sentiment.

                                                            1. 2

                                                              $WORK: payment integrations

                                                              $HOME: webworkers and offscreen canvases.

                                                              1. 2

                                                                $WORK: Getting our stack off of MongoDB permanently, one step at a time.

                                                                $HOME:

                                                                • 2 weeks after posting here that my laptop was barely hanging on, the battery just….stopped being recognized entirely. Ended up pulling the trigger on an M1 Macbook Air and that arrives tomorrow, so playing with that will constitute most of my week.
                                                                • Playing around with modeling some custom enclosures for a couple electronics builds
                                                                • Playing around with our dogs
                                                                1. 2

                                                                  where’s your stack headed, db-wise?

                                                                  1. 2

                                                                    Nice and normal MySQL haha. The Mongo was leftover and horrible from back when the company was founded 7y ago and it was not managed properly, plus our data is headed far more in the relational direction now.

                                                                    1. 1

                                                                      And, mind to share why you’re moving off?

                                                                      1. 1

                                                                        See other comment :)

                                                                  1. 3

                                                                    I’m wondering if he would be willing to try this technique out to get around compilation times in addition to using final on the derived objects in order to get around the virtual method slowdown. I’ve been using it and it seems ok…I think?

                                                                    https://stackoverflow.com/a/41292751/2088672

                                                                    1. 3

                                                                      I’m sorry, but how the heck are you able to program walking at 6 miles per hour? I can barely manage 1.3 mph

                                                                      1. 104

                                                                        I’m not a big fan of pure black backgrounds, it feels a bit too « high contrast mode » instead of « dark mode ». I think a very dark gray would feel better to the eye. n=1 though, that’s just a personal feeling.

                                                                        Thanks for the theme, it’s still great!

                                                                        1. 29

                                                                          Agreed, background-color: #222 is better than #000.

                                                                          1. 15

                                                                            I’ll just put my +1 here. The pure black background with white text isn’t much better than the opposite to me (bright room, regular old monitor). I’ve been using a userstyle called “Neo Dark Lobsters” that overall ain’t perfect, but is background: #222, and I’ll probably continue to use it.

                                                                            On my OLED phone, pure black probably looks great, but that’s the last place I’d use lobste.rs, personally.

                                                                            1. 18

                                                                              Well, while we’re bikeshedding: I do like true black (especially because I have machines with OLED displays, but it’s also a nice non-decision, the best kind of design decision), but the white foreground here is a bit too intense for my taste. I’m no designer, but I think it’s pretty standard to use significantly lower contrast foregrounds for light on dark to reduce the intensity. It’s a bit too eye-burney otherwise.

                                                                              1. 7

                                                                                You have put your finger on something I’ve seen a few times in this thread: The contrast between the black background and the lightest body text is too high. Some users’ wishes to lighten the background are about that, and others’ are about making the site look like other dark mode windows which do not use pure black, and therefore look at home on the same screen at the same time. (Both are valid.)

                                                                                1. 10

                                                                                  For me pure white and pure black is accessibility nightmare: that high contrast triggers my dyslexia and text starts to jump around, which starts inducing migraine.

                                                                                  As I default to dark themes systemwide and I couldn’t find way to override detected theme, this site is basically unusable for me right now. Usually in these cases I just close the tab and never come back, for this site I decided type this comment before doing that. Maybe some style change happens, manual override is implemented or maybe I care enough to setup user stylesheet.. but otherwise my visits will stop

                                                                                  1. 1

                                                                                    No need to be so radical, you still have several options. Not sure what browser you’re using, but Stylus is available for Chrome/FF:

                                                                                    https://addons.mozilla.org/en-US/firefox/addon/styl-us/

                                                                                    It allows to override the stylesheet for any website with just a few clicks (and few CSS declarations ;))

                                                                                    1. 9

                                                                                      I don’t mind the comment. There’s a difference between being radical because of a preference and having an earnest need. Access shouldn’t require certain people to go out of their way on a per-website basis.

                                                                                      1. 6

                                                                                        It’s not radical, it’s an accessibility problem.

                                                                                2. 8

                                                                                  That’s great, thank you.

                                                                                  I wonder if I am an outlier in using the site on my phone at night frequently. Alternatively, maybe we could keep the black background only for the mobile style, where it’s more common to have an OLED screen and no other light sources in your environment.

                                                                                  1. 2

                                                                                    I don’t use my phone much, especially not for reading long-form content, so I wouldn’t be surprised if I was the outlier. That sounds like a reasonable solution, but it’s not going to affect me (since I can keep using a userstyle), so I won’t push either way. I will +1 the lower-contrast comments that others have posted, if it remains #000 though - the blue links are intense.

                                                                                    1. 1

                                                                                      The blue link color brightness is a point that not many have made. I think the reason I didn’t expect it is that I usually use Night Shift on my devices, which makes blue light less harsh at night. Do you think we should aim to solve this problem regardless of whether users apply nighttime color adjustment? Another way to ask this question: What do you think about dark mode blue links in the daytime?

                                                                                      1. 2

                                                                                        Sorry if I’m misunderstanding, but to clarify, my above comment is in a bright room; I try to avoid looking at screens in dim light/darkness. The blue links just look kind of dark, and intensely blue. Just a wee reduction in saturation or something makes it easier to read.

                                                                                        Thanks for your work on this btw. I looked into contributing something a while back, but was put off after it looked like the previous attempt stalled out from disagreement. I’d take this over the bright white any day (and it turns out this really is nice on my phone, dark blue links withstanding). The css variables also make it relatively easy for anyone here to make their own tweaks with a userstyle.

                                                                                        I feel like I’ve taken up enough space complaining here, so I’ll leave a couple nitpicks then take my leave: the author name colour is a little dark (similar to links, it’s dark blue on black), and the byline could do with a brightness bump to make it more readable, especially when next to bright white comment text.

                                                                                        1. 1

                                                                                          I appreciate the clarification and other details :)

                                                                                    2. 1

                                                                                      My laptop is OLED and I’d still appreciate #000 there

                                                                                      1. 1

                                                                                        +1 to separate mobile style.

                                                                                    3. 4

                                                                                      I strongly agree.

                                                                                      I can’t put my finger on why, but I find very dark gray easier.

                                                                                      1. 1

                                                                                        #222 is way better! thank you

                                                                                      2. 14

                                                                                        I strongly disagree, and this black background looks and feels great to me! No one can ever seem to agree on the exact shade or hue of grey in their dark themes, so if you have the general UI setting enabled, you end up with a mishmash of neutral, cooler, hotter, and brighter greys that don’t look cohesive at all. But black is always black!

                                                                                        For lower contrast, I have my text color set to #ccc in the themes I have written.

                                                                                        1. 6

                                                                                          Another user pointed out that pure black is pretty rare in practice, which makes this site stand out in an environment with other dark mode apps:

                                                                                          Here’s a desktop screenshot with lobste.rs visible - notice that it’s the only black background on the screen.

                                                                                          Does that affect your opinion like it did mine? I do see value in pure black, but suppose we treated the too-high-contrast complaint as a separate issue: Darkening the text could make the browser window seem too dim among the other apps.

                                                                                          1. 3

                                                                                            I prefer the black even in that scenario. The contrast makes it easier to read imo.

                                                                                            1. 2

                                                                                              Not all. If it gets swapped out for grey I will simply go back to my custom css, which I have used to black out most of the sites I visit, so no hard feelings.

                                                                                          2. 8

                                                                                            Feedback is most welcome! Would you please include the type of screen you’re using (OLED phone, TFT laptop…) and the lighting environment you’re in (dark room, daytime indoors with a window, etc.)? And do you feel differently in different contexts?

                                                                                            I’ve got some comments about how I selected the colors in the PR, if that helps anyone think through what they would prefer.

                                                                                            1. 4

                                                                                              Sure! I’m on my iPhone 12 so OLED phone. I tried in with dimmed lights and in the dark, but in both cases I think I’d prefer a lighter background color.

                                                                                            2. 7

                                                                                              I disagree. Black is black. These off-gray variants just looks dirty and wrong to me.

                                                                                              I love this theme.

                                                                                            1. 3

                                                                                              I’ve played a lot of Tetris and every time I do my minds eye pictures colorful blocks falling and assembling to clear lines, solving t-spins, testing different sequences and possibilities and what not. I assume that picturing the blocks happens because the game is so colorful with easily distinguishable shapes.

                                                                                              Programming has fewer visually distinguishable characteristics for me. The visual part of the programming in the background faded after a year or so. The worst of it happened when I was using msn messenger and starting typing std::cout <<. Now it’s just my mind constantly churning through ideas which I know on a conceptual level how to implement. No more blocks but the feeling of trying to shove a square into an appropriately sized and shaped hole remains.

                                                                                              1. 27

                                                                                                This is coming from the same brilliant team who stupidly tried to hide urls for our own good.

                                                                                                1. 5

                                                                                                  Visible URLs are a UX thing. This is much worse than that. If they actually removed alert, confirm, and prompt from same origin pages, it would cause massive breakage basically just so they can optimize their JS pipelines. It’s a really bad idea. It makes much more sense to say it doesn’t work in JS modules or something like that instead of planning for a full on breakage.

                                                                                                  1. 4

                                                                                                    Disabling alert and confirm in JS modules wouldn’t fix the concerns about scams.

                                                                                                  2. 3

                                                                                                    Who knew that promo packets would be the downfall of the World Wide Web?

                                                                                                  1. 8

                                                                                                    I don’t think I’m ever going to not hate Typescript. What’s worse is that I both feel it would most likely would keep things cleaner in the long run and it would help noobs get into my codebase more easily. It feels like a semi-enforced documentation step.

                                                                                                    But I hate it. I hate how it looks. I hate having a compiling step. I hate having to annotate everything. I hate how everyone thinks that you need it for modern development and that without it you’re coding in the stone ages. I hate that it’s really just suggesting types when I can just use any as void* which based on my aversion I almost always do whenever I’ve had to deal with it in the past. I even hate that the article’s author is using a ligature based font - and that one isn’t even fair.

                                                                                                    /rant

                                                                                                    If someone started a project with it I could understand why. It really does make a lot of sense. But I’ll never use it of my own free will.

                                                                                                    1. 3

                                                                                                      Some people may have thought I wrote the above rant (including about the font). What I really dislike is how it’s treated as defacto. When I see a team implement Haskell on the back-end because they value types but also strictness in managing IO, no any, and ergonomics composition for a functional code base, then say “yup, TypeScript and fp-ts is good enough for our front-end”.

                                                                                                      1. 2

                                                                                                        I mean, TS with strict mode, noUncheckedIndexedAccess, plus all the ESLint rules that forbid any and all other unsafety is getting pretty close to Haskell in terms of type safety IMO.

                                                                                                        1. 2

                                                                                                          Out of curiosity, have you used Haskell professionally?

                                                                                                          1. 2

                                                                                                            No, although from what I gather from people who have, it’s used quite differently to Haskell in academic contexts. Much fewer weird tricks (lenses was the example they gave), and a willingness to accept IO in places where fundamentally it is necessary (e.g. managing application state shared across concurrency boundaries).

                                                                                                          2. 2

                                                                                                            Without an IO monad, do, and composition infix operators, it not close in ergonomics.

                                                                                                            1. 2

                                                                                                              Well, Promise is the equivalent of the IO monad, which makes async/await equivalent to do in that domain. Not having general monads for failure or immutable state is clunky though. Composition/infix can be emulated with “fluent” object interfaces.

                                                                                                              So yes, they’re obviously very different languages, but the point is that TS can be a very safe, expressive type system if you use it right.

                                                                                                              1. 1

                                                                                                                I’d disagree, not that your perspective of similarity is wrong, but because those differences matter a lot to me. Having seen a lot of libraries with .pipe(), et.al. all over the place, it’s very hard to read when you know the author would rather be in a language where this style is supported first-class. Comparing Promise isn’t great either: it’s not synchronous, it’s immediately evoked when constructed so many thunk it, canceling is a pain and rarely supported, and the error handling with reject and catch is a mess across libraries instead of branching Result or Either.

                                                                                                        2. 2

                                                                                                          Please note that I’ve used TS in many different contexts beyond your standard browser or node server and a portion of my frustration comes from trying to get TS running in atypical environments.

                                                                                                          For me TS is still frustrating with new projects. I’ve found that the configuration for getting a new TS project up and running with tests and build targets is very complex and fragile. The few times I’ve tried to start with TS I found it cost me so much time in setup that I would have been better off sticking with plain JS. In addition, I have encountered runtime errors multiple times despite compiling in strict mode and using as much typing as possible.

                                                                                                          Given this, I do think it does provide some minimal benefit around things like basic type and name errors being caught, that I think can be worthwhile for most projects to use.

                                                                                                          1. 2

                                                                                                            How much experience do you have with languages that require compilation? I ask, because my experience (not with Typescript, but in general) is that I tend to dislike dynamic languages (even though I love using Lua) because the types are so loose (I learned C early on in my career). I have a table in Lua, I have no idea what can be in it, whereas in C, I know because I can look up the structure definition.

                                                                                                            1. 1

                                                                                                              C++, Go, and Java. Java professionally. I dislike them all equally on the typing front. If anything it would be nice if types just magically sprung up after I’ve finished writing the rough draft of the code and had no enforcement until I’ve left the code base for a while. The thing is that while I’m in the code I know what I’m doing. It’s after I come back from working on something else I’m lost.

                                                                                                              1. 1

                                                                                                                Have you ever used languages with whole program type inference? (E.g., Haskell, F#) That might be what you are looking for.

                                                                                                          1. 3

                                                                                                            I’m shipping. I am finally shipping.

                                                                                                            1. 17

                                                                                                              In this way, suicide is not a display of weakness. In fact, it is a display of extreme conviction and strength. Even with the backdrop of mental illness, there are parts of the brain that are usually unaffected. These parts are so ancient in development, we have little conscious control of them. To attempt suicide requires overcoming conscious desires to survive. To succeed, is to overcome extreme subconscious desires. This means that, for suicide, often the smartest and most capable people are able to succeed.

                                                                                                              This is wrong and I despise this paragraph. It’s not a display of weakness and it’s not a display of strength. Free from external physical factors like someone behind you waiting to chop off your head it’s a display of desperation and loneliness and it shouldn’t be mistaken for anything but. The solution to all of the problems with depression and programming or really any solitary endeavor is:

                                                                                                              1. Tangible rewards that persist in real life.
                                                                                                              2. More human contact and lasting relationships which are based around pointless, inefficient, wastefully, dumb fun.

                                                                                                              I will scream that from the mountain tops until my throat is raw.

                                                                                                              If someone does open source projects for anything that resembles admiration from their peers without getting paid for it I would suggest avoiding it entirely. It’s not healthy.

                                                                                                              1. 10

                                                                                                                The solution to depression you mention only works for people whom the source of depression is the lack of those things.

                                                                                                                Here is a small, incomplete list of things that cause depression and may not be fixable with goals or friends: Anxiety, Bipolar disorder, chronic pain, PTSD, Schizophrenia…

                                                                                                                For myself, I’ve had every reason to be happy. I’ve had amazing, supportive friends. I’ve had goals and professional success that mattered to me.

                                                                                                                I’ve wanted to die since I was 9 years old. I’ve held a gun to my head too many times to count. I’ve spent my entire life pretending to okay. Until I couldn’t anymore. I had a devastating psychotic break that forever changed who I am. Fortunately, it lead to me finally getting help.

                                                                                                                There are many people who haven’t made it like I have. I tried, but I couldn’t save them and ended up attending their funerals. And while everyone else was so devastated and didn’t understand, I did. I cried my tears and moved on. I hope they found peace.

                                                                                                                Should anyone care to read, a bit of my own story is on my blog: https://kayode.co/blog/4106/living-with-psychosis/

                                                                                                                1. 1

                                                                                                                  that resembles admiration from their peers

                                                                                                                  Does “wanting to create useful stuff for other people and being happy when people star it/find it good” fall under that ? Because then I’m fucked.