Experience Tumblr like never before
oh python, never change
rating = 4.5
WRONG
rating = str(4.5)
Okay thats allowed
coding is just an endless cycle of "i know nothing. i give up" and "i know everything. i am god"
"So you know how C is procedural, Haskell is functional, and Java is object-oriented? You may ask: 'what about Python?'
Well, Python is bullshit-oriented."
My friend, teaching me Python.
intro / about me
you can call me whatever you want, or just use the initials of my username lol, "TE03"
20
polyglot (ITA, SPA, ENG OK)
electronics/electrotechnics and automation (college, i guess?)
4th year (it's 5 years, so one more to go before uni)
long term goal: becoming an electrical engineer in the robotics/automation field and moving away
(i know, very mediocre, but thankfully i plan on improving, as the second semester just started)
robotics
coding websites
listening to music (?)
horror media
customizing anything
home automation (smart home-ing where possible)
my favorite song currently:
update and record my studies
update about my grades, even if they're bad, so i can keep myself accountable
discuss school-related topics, such as eventual conferences, debates, presentations and so on
talk about my life when something of relevance happens
discuss technology and robotics, as i believe it doesn't have to be "boring" and/or inaccessible to most people - it can be fun, thrilling, stimulating and entertaining! we're witnessing the birth of a new, extremely prolific field and i believe as many people as possible need to know about it and be kept updated!
i'm looking forward to meet all of you and support each other through our academic life :^)
ended up demotivated for months on a personal project... but we're so back, exciting things are happening. I implemented a functional, fairly readable json parser in 12 lines of code using my new library. more to come. eventually.
Please sign this petition to advocate against apple’s decision to disable Progressive Web Apps on iOS in the EU.
For context, Apple has recently been forced to obey EU regulations and decided to be maliciously compliant in doing so. They argue that they cannot support both multiple browsers and progressive web apps for safety reasons because there is no way to know that those other browsers will treat permissions in the same safe way safari does, breaking the trust and safety of the web. They also mention that in order to have safe PWAs they would have to introduce “an entirely new integration architecture” which they noted their team wouldn’t make the investment into given that so few people use PWAs currently and because apparently Apple doesn’t have enough developers to build the “integration architecture” that would be required.
Most people don’t use PWA’s because Apple hasn’t even supported push notifications on PWAs at up until about a year ago while android supported notifications for almost a decade, since 2015. And still the web push notification support is largely incomplete — not implementing several functions within the Push API specification.
Please take the time to sign the above petition if you appreciate having an open, free, cross platform, and largely unmoderated app distribution channel. You can read more about Apple’s plan for the EU here: https://www.apple.com/newsroom/2024/01/apple-announces-changes-to-ios-safari-and-the-app-store-in-the-european-union/
And here is the direct statement from the Apple article linked above addressing Progressive Web Apps:
The iOS system has traditionally provided support for Home Screen web apps by building directly on WebKit and its security architecture. That integration means Home Screen web apps are managed to align with the security and privacy model for native apps on iOS, including isolation of storage and enforcement of system prompts to access privacy impacting capabilities on a per-site basis.
Without this type of isolation and enforcement, malicious web apps could read data from other web apps and recapture their permissions to gain access to a user’s camera, microphone or location without a user’s consent. Browsers also could install web apps on the system without a user’s awareness and consent. Addressing the complex security and privacy concerns associated with web apps using alternative browser engines would require building an entirely new integration architecture that does not currently exist in iOS and was not practical to undertake given the other demands of the DMA and the very low user adoption of Home Screen web apps. And so, to comply with the DMA’s requirements, we had to remove the Home Screen web apps feature in the EU.
Being autistic feels like having to emulate brain hardware that most other people have. Being allistic is like having a social chip in the brain that handles converting thoughts into social communication and vice versa while being autistic is like using the CPU to essentially emulate what that social chip does in allistic people.
Skip this paragraph if you know about video codec hardware on GPUs. Similarly, some computers have hardware chips specifically meant for encoding and decoding specific video formats like H.264 (usually located in the GPU), while other computers might not have those chips built in meaning that encoding and decoding videos must be done “by hand” on the CPU. That means it usually takes longer but is also usually more configurable, meaning that the output quality of the CPU method can sometimes surpass the hardware chip’s output quality depending on the settings set for the CPU encoding.
In conclusion, video codec encoding and decoding for computers is to social encoding and decoding for autistic/allistic people.
All fancy smancy generative ai models know how to do is parrot what they’ve been exposed to.
A parrot can shout words that kind of make sense given context but a parrot doesn’t really understand the gravity of what it’s saying. All the parrot knows is that when it says something in response to certain phrases it usually gets rewarded with attention/food.
What a parrot says is sometimes kinda sorta correct/sometimes fits the conversation of humans around it eerily well but the parrot doesn’t always perfectly read the room and might curse around a child for instance if it usually curses around its adult owners without facing any punishment. Since the parrot doesn’t understand the complexities of how we don’t curse around young people due to societal norms, the parrot might mess that up/handle the situation of being around a child incorrectly.
Similarly AI lacks understanding of what it’s saying/creating. All it knows is that when it arranged pixels or words in a certain way after being given some input it usually gets rewarded/gets to survive and so continues to get the sequence of words/pixels following a prompt correct enough to imitate people convincingly (or that poorly performing version of itself gets replaced with another version of itself which is more convincing).
I argue that a key aspect of consciousness is understanding the gravity and context of what you are saying — having a reason that you’re saying or doing what you are doing more than “I get rewarded when I say/do this.” Yes AI can parrot an explanation of its thought process (eli5 prompting etc) but it’s just mimicking how people explain their thought process. It’s surface level remixing of human expression without understanding the deeper context of what it’s doing.
I do have some untested ideas as to why its understanding is only surface level but this is pure hypothesis on my part. In essence I believe humans are really good at extrapolating across scales of knowledge. We can understand some topics in great depth while understanding others similarly on a surface level and go anywhere in between those extremes. I hypothesize we are good at that because our brains have fractal structure to them that allows us to have different levels of understanding and look at some stuff at a very microscopic level while still considering the bigger picture and while fitting that microscopic knowledge into our larger zoomed out understanding.
I know that neural networks aren’t fractal (self-similar across various scales) and can’t be by design of how they learn/how data is passed through them. I hypothesize that makes them only understand the scale at which they were trained. For LLM’s/GAN’s of today that usually means a high level overview of a lot of various fields without really knowing the finer grain intricacies all that well (see how LLM’s make up believable sounding but completely fabricated quotes for long writing or how GAN’s mess up hands and text once you zoom in a little bit.
There is definitely more research I want to do into understanding AI and more generally how networks which approximate fractals relate to intellegence/other stuff like quantum physics, sociology, astrophysics, psychology, neuroscience, how math breaks sometimes etc.
That fractal stuff aside, this mental model of generative AI being glorified parrots has helped me understand how AI can seem correct on first glance/zoomed out yet completely fumble on the details. My hope is that this can help others understand AI’s limits better and therefore avoid putting too much trust into to where AI starts to have the opportunity to mess up serious stuff.
Think of the parrot cursing around children without understanding what it’s doing or why it’s wrong to say those words around that particular audience.
In conclusion, I want us to awkwardly and endearingly laugh at the AIs which mimic the squaks of humans rather than take what it says as gospel or as truth.
Eh all programming languages are good for certain use cases (aside from Java - Kotlin is better for android and Go is better for anything else).
Python is good at quick and dirty automation that just needs to get done. It’s very friendly to use and won’t pout at you when you ask it do something. Also once you learn to navigate pandas+numpy combined with Jupyter Notebooks it gets wayyyy faster and easier to use for data wrangling.
For example, I recently used Python to scrape hundreds of thousands of tweets via snscrape without having to use twitter’s API. Once I downloaded all the tweets it took me about 30 minutes to then do some basic analysis/labeling/sorting on said tweets.
Yes pip is terrible. Yes Python has only a hint of types (typescript style type hinting arrived in 3.something). Yes pickle creates so many vulnerabilities. Yes performant Python is basically C in a trench coat.
All that said, there’s a reason Python is many people’s first typed programming language and why I continue to use it whenever I have some data I have to fetch, transform, and analyze or whenever I’m just starting to explore a new field of computer science.
Writing Python is basically like writing pseudo code so I love it for anything that I just need to code up and run once or twice for either a proof of concept before moving to a more “serious” language or just discard the program is for my one-time personal use only.
No one should ever have to maintain more than 1k lines of Python but I will still occasionally write that much Python simply because it lets me explore high level techniques without worrying about being perfectly precise.
Python is not for production but instead for messing around. Python is that goofy ahh language that everyone likes because it doesn’t mind when you affectionately mess with it. Python is the adorable sidekick that makes programming fun again and for that I adore it
Java is a trash language that should burn in the parts of hell where hitler is
Rust on the other hand is a bratty lil language that should burn in the parts of hell where queers party
Java is a trash language that should burn in the parts of hell where hitler is
Rust on the other hand is a bratty lil language that should burn in the parts of hell where queers party
I felt like the placement of your background images within the body tag to the top and bottom of your main content div is pretty intuitive overall. The only thing I could think of to improve the vines would be to make them pseudo elements (another YouTube video by Kevin Powell) of the body element so that way you don't have to have empty divs cluttering your html for them. Pseudo elements are useful for purely decorative elements because they're created purely out of CSS; no HTML required!
TLDR: Color contrast is hard; especially with the current color systems we have today (HSB/RGB) since the numeric incantations of popular color systems don't line up with how our eyes actually perceive color, especially when it comes to brightness. Google made a new color system (along with a tool based on that color system to generate color palettes) that lines up better with how humans perceive color but it still isn’t perfect. IMO using tools like palettte.app (with 3 t’s) and hand-selecting colors numbered by how light they are - more about that below - works best and gives projects more of a hand-made feel but Google's tool works well enough for making a quick and professional looking color palette.
Making CSS variables with the format
colorName-brightnessValue
makes it easier to meet contrast standards when coding up a website. I'll usually organize my colors to range from 0 to 1000 exclusive where 0 is black and 1000 is white. I usually use 100, 300, 500, 700, and 900 the most so I have those 5 shades of each main color ready to go whenever I start a new project. (I use the same 4 colors for all my projects so it's easy to copy and paste the colors from the last project into the new one!)
That way if I know my background is violet-100 and my text color is violet-700 that the text will be legible because of the difference in brightness values is 600 just based on the variable names alone. Generally a difference of at least 500 (assuming you go linearly in perceived brightness) is enough to get AAA contrast levels.
For an example, here are my css variables for zephiris.me:
Others do the numbering of the shades differently. Here's how tailwind does it:
Tailwind CSS color guide's section on making a custom color palette has links to some helpful tools on how to hand-pick several shades of a set of colors so that the brightnesses of the colors decrease with the numeric value in a way that actually lines up with people's perception of color.
On that same page, tailwind also has all those color palettes shown above free for you to steal use in your projects!
Google's Material 3 design framework has shades of every color go from 0 to 100 for brightness instead of my 0-1000 brightness or Tailwind's 0-1000 darkness.
Google also has a nice resource which will automatically generate a color palette for you (I like doing it manually with palettte.app [with 3 t's] but if you just need a quick and easy palette that meets contrast standards, Google’s resource works pretty well).
Google actually has a very interesting blog post on why it’s so hard to make accessible colors and get the right amount of contrast with current color systems like HSB/RGB etc.. To fix this, they created a new color system, HCT (Hue Chroma Tone), which helps solve that problem by having HCT's Tone value better match our human perception of brightness.
My main advice for overall UI design is to pick three colors: a primary color (for background colors), a secondary color (for card backgrounds/text colors), and a tertiary color (for any elements that should be interacted with like buttons and links). I made a site to try out various combinations of colors and share those palettes with others a while ago (apparently November of 2021, thanks GitHub!)
Recently Juxtopposed made a more professional version of what I made called realtimecolors.com along with an accompanying video. Her website also features a palette generator where you just enter in one color and it will generate a set of palettes off that one color!
Unfortunately neither mine nor Juxtopposed's websites support multiple shades of each key color, so to get those additional shades make sure to either use Google's generator or one of the tools mentioned by Tailwind once you have a general set of colors that you feel works well together.
What works best for me is to pick colors based on environments which I enjoy to be surrounded by. I based my color palette for zephiris.me on:
the night sky's bluish-purple hue (maybe I wear rose-tinted glasses ok?)
greenish-blue seafoam from ocean waves
golden rays of sun filtering through pine trees
Lastly, I used the trans flag colors to describe my gender for obvious symbolic reasons - I also like being next to a particular shark :p
Meeting color contrast standards can get way easier by numbering your colors based on how light they are. There are plenty of ways to get a set of colors labeled by lightness:
using palettes already made from Tailwind
Have Google do some math wizardry to generate you a custom palette
Use tools like palettte.app to create your own set of colors to play with
Regardless of what option you choose, the overall added structure of numbering colors' brightnesses makes it dramatically easier to make incredibly legible, accessible, and colorful designs.
i like your website! it looks very nice
especially the gradient colored text!! you used a separate font to make it more legible
whenever i try to do something like that, it always becomes really hard to read... maybe i should learn some basic web design?
my website looks like this and it took two days of fiddling with css
Thank you! The biggest thing with making text legible is making sure there is enough contrast between the text color and the background or make the text big enough that it’s legible even if there isn’t that much contrast. The best guide on color contrast that I know of is the Mozilla docs! If you scroll down to the solution part there it has many tools to check text contrast.
Since your website has a warm bright canvas background darker colors and gradients would work better and end up being more legible.
If you’re looking to learn more about web development and especially CSS I strongly recommend Kevin Powell on YouTube! His videos on flexbox and grid are very helpful in understanding those new browser features and making responsive websites (websites that look great on any screen size). For example, I used grid for the nickname table and for my projects so that on desktop those elements would be wider and shorter while on mobile they’d get narrower and taller.
I love your site too, especially the canvas theme with the green branch/orange leaves and the clever span box to show your favorite color complete with a title tag featuring the hex code!
To be clear my site took me at least 20 hours of fiddling and development to make. Feel free to look at the site code (and my commit history) on GitHub!
Perfectionist's paradise code
P.S. I deleted 2 empty rows in the 3rd file to make everything perfect
Hey people!
Does anyone know any AI researcher groups?
I'm dying to find people to proofread my papers and throw spaghetti at the wall with.
I have STs coming up( 17th Feb) , which are basically the tests but have high importance and if I did my best for them , then end terms will be in my favour obviously. So rules are all uncomfortable, all difficult but uncomfortable = success chances are high . Secondly believe in yourself.
Try to:
2025 vision board 🦋🥂🪄 and we have got this we all know we can do better 🫶
Day 01 💟
Today was a good day with some motivation from various things , I'm trying to get out of the rut I have trapped myself in for the last 1 year , it's going to be difficult to do everything all at once so I'm focusing on 1 by 1 . There was a lot of friction and resistance felt by me from my body and mind but I tried my best.
🌊Physical:
Did some push-ups and arm exercises.
I got good sleep and woke up early before 7:30 am .
🌷Mental:
Read 5-7 pages .
Did journaling a little bit but satisfactory.
Search on the upcoming course I'm going to begin with .
🌸Spiritual:
I did yoga and breathwork in the morning= best thing I did.
Meditation one time at night .
Been grateful and learned a lot today.
🕯️Things I learned from today :
Failure happened, life sucked for once , dreams broken but if I quit it will never happen and if not, there is more than 1% chance of it to happen.
Keep going , Aim high , keep working hard towards that thing .... Because if it is in your mind , it's a coming reality.
Time will change, and definitely for my good now.
how do people do hobbies or learn other things on top of university?? I'm trying and it genuinely does not seem possible [we're going to ignore the daily 5hrs of screentime]
30 days of productivity day 5-7/30
What i did:
html
numerical analysis assignment
finished numerical analysis ch2
30 days of productivity: day 2-day 4/30
I've been studying a bit but haven't been posting so here's what I've done in the last week:
advanced database ch1
started discrete maths and combinatorics ch1
finished required online courses
backlog for software engineering project
started learning html
Progress :)
for my first project in java I'm going to make a to do list application, enhance it as I learn more and more stuff then at the end build it properly with xml
so the 60 days of productivity challenge did not work out and that's fine we can always start over. but I've realized the way I've been studying is fragmented and all over the place so I've decided that I must do the following things:
1. Learn java
2. Then finish the kotlin course
3. Then make an app
4. then study more c++
5. then do a project in c++
and this seems very ambitious but I'm not planning to be an expert in these languages anytime soon, just know enough to make stuff and grow my knowledge through practice. ideally I'd like to do all of these things by mid to late October. And I'll do projects throughout the year so I don't forget and can improve :)
I'm starting java today, I'll post a lot here to keep myself accountable and I hope I can do it. I'm excited to learn new languages and build things!
Day 10/60 of productivity
Today:
- 2hrs of kotlin
- worked out
- cooked :)
day 9/60 of productivity
worked out
washing
2hrs of kotlin.
I do not like this language :( but it makes me happy that my c++ knowledge makes learning a new language easier
Day 8/60 of productivity
Learning kotlin now and im not fond of the tutorials to be honest, I prefer the teachers from the past videos and I'm now using other resources on top of the course. im not being as productive as id like the past few days i hope this week is better.
Day 7/60 of productivity
- 2hrs of Udacity course (I'm now 70% through android dev fundamentals :))
- worked out
- hair-care
I wanted to study more in the evening but the wifi was being spotty so I'm just going to sleep. I'd really love to wake up early tomorrow and get stuff done but we'll see.
day 6/60 of productivity
I'm really enjoying learning this. I'm making apps and even tho they're simple ones right now it is so incredibly satisfying to see the little android icon pop up on my phone screen knowing I made it :))
today:
finished lesson 3 of android dev fundamentals course
started user input section of android dev fundamentals course
got halfway through user input section of ^^
worked out
read Cloud Cuckoo Land by Anthony Doerr for 1hr
day 4/60 of productivity.
im going to be better at this i promise. ive been procrastinating and got scared about all that i need to do but now we are focused!! also i figured i should post photos for this challenge and just put in more effort in general. let's hope i can be consistent.
today:
worked out
finished lesson 2 of android dev fundamentals course