Threads for matheuslessa

  1. 2

    Finishing the documentation for my terminal code editor pepper. It’s pretty much feature complete at this point, so I’m looking forward to ironing it out.

    1. 3

      Getting ready to launch our puzzle adventure vr game tomorrow (july 27th) on all major vr stores! Weeehooo!

      I’ve coded gameplay, shaders, design tooling, optimizations, porting, and some other stuff. Hard to believe we’ve finally made it after a little more than 3 years!

      Announcement link: https://twitter.com/BitCakeStudio/status/1413233930858209280

      1. 1

        Congrats on launching!

        1. 1

          Thanks!! It surely feels good :’)

        2. 1

          Looks beautiful, great work - How big was the team?

          1. 1

            Thank you! The team was around 10 people and about 12 during peak development.

        1. 12

          Fuck, Lenna? Could we stop alienating women in tech? Don’t take my word for it, the AV1 folks are pleading with the field to stop using Lenna too.

          “If a professor makes a sexist joke, a female student might well find it so disturbing that she is unable to listen to the rest of the lecture. Suggestive pictures used in lectures on image processing are similarly distracting to the women listeners and convey the message that the lecturer caters to the males only. For example, it is amazing that the Lena pin-up image is still used as an example in courses and published as a test image in journals today.” ~D. P. O’Leary, 1999

          1. 6

            Yeah I always find it uncomfortable to keep seeing this same image. It goes back to college times in computer graphics class. I didn’t know why back then, but now I do. Btw, the professor back then even suggested we search the full pic after class.

            It’s about time we use other images in place of lenna.

            1. 4

              the professor back then even suggested we search the full pic after class

              🤮

              1. 6

                Speaking as a woman here, I honestly didn’t get the problem with the image; I thought she might just be wearing a shoulderless outfit or something. Then this comment prompted me to search the full image, and… oh, it’s a fucking Playboy pinup. Yeah.

            2. 3

              Suggestive, is the crux of it. The pretext of sex in the image requires an investment in identifying the image.

              Lenna is technical.

              From a technical standpoint, apropos Imaging systems, identification and composition algorithms, and so on: Lenna is industrial.

              Alas, we might ought to have used the Mona Lisa or some other such classic art, perhaps dismantled and re-assembled, over time, as ‘treasure’. Lenna is truly a beautiful pic, seeing her everywhere deep in the binaries is .. indeed .. a treat.

              However, there are also rainbows.

              1. 5

                seeing her everywhere deep in the binaries is .. indeed .. a treat.

                Lenna is also the male gaze; that’s why it’s problematic. https://en.wikipedia.org/wiki/Male_gaze

              2. 3

                Here are some alternatives (both PDF articles).

                1. 1

                  I like the pic of Fabio in the second one. Because Fabio.

                2. 3

                  We really need to move away from the pic in this industry.

                  There’s this wonderful tool, https://rawpixels.net. It’s so useful when working with raw images. But I really don’t feel comfortable using it at work, because the default image is the Lenna photo, and I don’t feel comfortable with suggestive pictures of naked women on my screen in an open floor plan office setting.

                1. 3

                  Finishing a compact TUI task manager I used to start learning Rust. After that I will try to get some feedback on my code. I stuck to cargo clippys feedback but I can learn a lot more by specific suggestions from better Rust programmers. Even without feedback I’m immensely satisfied. Learning Rust was this big daunting task to me. Now I managed to build a working application in a few hours. Really looking forward to dive deeper.

                  On Saturday I participate in a 24 hours / 400 km cycling race so I will definitely pack and prepare my gear in the evenings.

                  1. 3

                    Rust is pretty fun learning! Once the borrowchecker clicks for you, it becomes really pleasant to write.

                    Are you using any crates in your project? I’m curious on how you interact with the tasks. Are they always single line and you edit them in place? Do you open an external editor? Did you implement and editor withing the application?

                    1. 1

                      Thanks for the encouragement. I also realized how little I know about memory management. String and str made that obvious very quickly.

                      I’m using three crates: termion, uuid and sqlite. There are three screens. Task list, adding a new task and editing an existing task. The input screens are only static text with a single line for the input and cursor. I implemented an editor in the sense that the application handles any character key, backspace and return to finish.

                      The task list shows the four states (todo, done, in progress, discarded) as color and symbol in front of every task. You can select a specific task with the arrow keys. There are hotkeys to change a tasks state, edit it or add a new task to the end of the list.

                      It’s really basic but was great for starting to learn Rust. I have a hard time with theory or toy examples. Instead I tend to build real things when learning something new. Sometimes this is a challenge but with Rust it turned out easier than anticipated to get going. The compiler is fantastic, I rarely had to use the internet, better than I imagined.

                      1. 1

                        Cool! Learning these rust stuff also made me a better programmer. I’d love to see some screenshots/gifs of it in action!

                        One “trick” I use when developing in rust and need info on, say, a stdlib struct, “!rust ” will search rust docs (if you have duckduckgo as your default search engine). I always take a look at the available methods (and examples) to see if there’s anything that already solves the problem I have (usually there is).

                        cheers

                  1. 7

                    Aside from regular work, I’m working on my code editor: cross platform, simple, modal and opinionated terminal code editor.

                    It’s been about 2 months that it’s now my main editor (just uninstalled neovim :D). It’s coded from scratch using rust, and today I removed the last non-platform dependency (fuzzy-matcher) and now the only dependencies are winapi and libc that are used in the platform layers.

                    My next milestone is updating the screenshots/gifs on github and some more polish before going 1.0

                    1. 1

                      Well done! Now I need to go digging for a link :D

                        1. 1

                          Thanks! Is it okay to link it here? Anyways, the project’s name is Pepper which is named after my cat :D

                          1. 1

                            It’s probably fine. After all; we are here to share our thoughts on technology!

                            Edit: it looks like a cool project, the opinionatedness is very much in line with my opinions.. leave everything to other tools and focus on the editor component.

                            1. 2

                              Thanks and thanks for taking a look! I took lots of inspiration from Kakoune on that

                              1. 2

                                That’s great, I love Kakoune’s take on vim commands. I wish it was supported in popular IDEs (there’s a buggy one for vscode, and that’s it I think).

                      1. 1

                        I feel like just looking at the total number of TODOs in a huge code base like the Linux kernel doesn’t tell you much. What would be interesting is number of TODOs over total LOCs.

                        Maybe also use information from source control to look at how long TODOs persist in the code base.

                        1. 1

                          Every single one of the graphs shows projects accruing more todos over time, which we could assume means they have been added and for one reason or another forgotten about. There can also be seen some patterns where todo’s are being used as placeholders for work in progress that then gets done and the todo’s subsequently removed.

                          I think the whole point of the page isn’t necessarily to show much more than “look, these projects all accrue todo’s over time, maybe that would be a good place to go looking for providing assistance.” There are multiple reasons for why todo’s remain un-done.

                          1. 2

                            What I find iteresting is the sudden jump of TODOs in just a couple of days. Maybe they were integrating external code in tree? It’s pleasing though to see the number drop occasionally

                            1. 1

                              I made the assumption that was due to a refactoring in progress, or some other maintenance being carried out and placeholders being committed, but integrating external code is also a good guess at what caused it.

                              I personally use todo’s as placeholders, I will write a todo, then open an issue with the body of the todo, update the todo to have the issue number in its copy and then commit with the issue number referenced. This results in the issue being linked to the commit making finding the relevant file and line/s trivial.

                              1. 1

                                that makes sense if those TODOs were scrapped, say, from the main branch and at some point some a big chunk of work containing a bunch of todos was merged into it