Sign in

afonsocrg

@afonsocrg.bsky.social
30 followers 13 following 51 posts

Building uni-feedback.com, reacttogether.dev and superttt.io I'm a software engineer eager to make this world a better place to live in.

PostsRepliesMedia
afonsocrg @afonsocrg.bsky.social · 03/10/2025
After 5 years of daily workouts, I realized that streaks can hurt our progress. It's easy to give too much importance to them, and it feels that all the progress is gone when we break them Tracking the total days since I started keeps a healthier perspective on my habits. #buildinpublic
020
afonsocrg @afonsocrg.bsky.social · 28/09/2025
Part 2: Our self improvement journey has to be gratifying even when we fail. Self compassion isn't soft, it's strategic #buildinpublic #selfimprovement #mindset #selflove
041
afonsocrg @afonsocrg.bsky.social · 26/09/2025
When we slip up, using circumstances as excuses protects us from feeling bad, but it keeps us away from progress. One day someone asked me "If you had to catch a flight, would you use that excuse?". It was game changer #selfimprovement #buildinpublic #mindset
120
afonsocrg @afonsocrg.bsky.social · 23/09/2025
After a lot of resistance, I decided to post my first TikTok video Realized I was avoiding it because it felt uncomfortable, but that's exactly why I needed to do it. Growth happens outside the comfort zone. Good things can only happen if we put ourselves out there. #buildinpublic
320
afonsocrg @afonsocrg.bsky.social · 18/08/2025
Lately I've been working on "invisible" stuff for Uni Feedback: - Built a whole admin dashboard to make it easier for me to maintain courses and feedback - Built new scrapers get course bibliography, assessment and description But it was finally time to make UI improvements. Roast my design!
110
afonsocrg @afonsocrg.bsky.social · 12/05/2025
🍻 The 2nd IndieBeers Bangkok will be on the 20th May! Join us to meet awesome builders in town, get inspired, charge your batteries and have a helluva productive week 🔥🚀 (it's free!) 👉 lu.ma/lqk0f36j See you there!
lu.ma
IndieBeers // Bangkok Meetup #2: Entrepreneur social (powered by Ramen Club) · Luma
Hi everyone 👋, welcome to the second IndieBeers in Bangkok! The goal is to help Indie Hackers / entrepreneurs & makers from across the city meet, exchange…
000
afonsocrg @afonsocrg.bsky.social · 27/02/2025
Just wrapped up the @multisynq.bsky.social "Multi Pong" workshop at 42 Porto! Built a multiplayer Pong game with Croquet.js without writing any backend or messaging code. Guide with code available at github.com/afonsocrg/mu... Feel free to PR with your own variation of the Pong game ;)
github.com
GitHub - afonsocrg/multi-pong: Online Pong game using Croquet
Online Pong game using Croquet. Contribute to afonsocrg/multi-pong development by creating an account on GitHub.
010
afonsocrg @afonsocrg.bsky.social · 30/01/2025
Last week I attended an indie builders co-working day in London. It's called @hackaditch, and it's just amazing! Today we made something similar in Lisbon and it was awesome! We had a productive day, got good feedback and made new connections! #coworking #lisbon #indie
000
afonsocrg @afonsocrg.bsky.social · 29/01/2025
🚀 React Together v0.3.3 is here! Add real-time shared cursors to your React app with just ONE line of code! Want full control? The useCursors is here for you! StackBlitz Demo: stackblitz.com/edit/react-t... #ReactJS #WebDev
React Together shared cursors. Synchronize cursors across multiple users or clients using the Cursors React componentSource Code of an example usage of the React Together Cursors component, to create shared and synchronized cursors in a React application.
120
afonsocrg @afonsocrg.bsky.social · 29/01/2025
Had a blast giving the "Multi Pong" workshop at 42 Lisboa this morning! We built a multiplayer Pong game without writing any backend! Full guide at github.com/afonsocrg/multi-pong #workshop #croquet
031
Reposted by afonsocrg
LisboaJS @lisboajs.org · 14/01/2025
We're just two days away from our first event of the year, in collaboration with Vue.js Portugal! 🎟️ 𝗬𝗼𝘂𝗿 𝗳𝗿𝗲𝗲 𝘁𝗶𝗰𝗸𝗲𝘁: meetup.com/lisboajs/eve... A huge thanks to Remote Crew, Infraspeak and Le Wagon Portugal for making this event possible!! #vue #lisbon
meetup.com
Portugal Vue #3 Meetup, Thu, Jan 16, 2025, 6:30 PM | Meetup
LisboaJS partnered with Portugal.Vue, and we are co-organizing this next event, focused on Vue!! The next [Portugal.Vue Meetup](https://www.meetup.com/portugal-vue/events/
042
afonsocrg @afonsocrg.bsky.social · 14/01/2025
🚀 React Together v0.3.2 drops with instant chat integration! Add real-time chat to your site with our <Chat/> component, or build your own with useChat hook. Fully customizable. Try it → reacttogether.dev/chat #react #reactjs
010
afonsocrg @afonsocrg.bsky.social · 11/01/2025
Just published my first python package: yacli_menu. A few years ago I had to create some python CLI menus. Didn't like what was out there at the time, so decided to build my own :) Hope it helps someone! github.com/afonsocrg/ya... #python
Example usage of yacli_menu

```
from yacli_menu import command, run_menu

@command("Add Numbers")
def add():
    a = float(input("Enter first number: "))
    b = float(input("Enter second number: "))
    print(f"Result: {a + b}")
    return True

@command("Subtract Numbers")
def subtract():
    a = float(input("Enter first number: "))
    b = float(input("Enter second number: "))
    print(f"Result: {a - b}")
    return True

@command("Multiply Numbers")
def multiply():
    a = float(input("Enter first number: "))
    b = float(input("Enter second number: "))
    print(f"Result: {a * b}")
    return True

if __name__ == "__main__":
    run_menu() 
```Example output of a yacli_menu program:

```
$ python3 example.py
1. Add Numbers
2. Subtract Numbers
3. Multiply Numbers
0. Exit
Enter choice: 
Enter choice: 6
Invalid choice. Try again.
Enter choice: asdf
Invalid choice. Try again.
Enter choice: 1
Enter first number: 19
Enter second number: 23
Result: 42.0
1. Add Numbers
2. Subtract Numbers
3. Multiply Numbers
0. Exit
Enter choice: 0
Exiting..
```
000
afonsocrg @afonsocrg.bsky.social · 08/01/2025
Stoked to be part of the organizing team! Thanks Rui Posse and @piara.bsky.social for making this fun!! See you there 🔥
022
afonsocrg @afonsocrg.bsky.social · 06/01/2025
Screen sharing is the digital version of looking over someone's shoulder. How often do we end up asking others to scroll down, or to click somewhere? I believe the internet needs to evolve towards collaboration by default. Thoughts on this? 🤔 #webdev #ux dev.to/afonsocrg/st...
dev.to
Stop sharing your screen, start sharing your website
Remember the last time you had to screen share during a call? Perhaps you were walking someone...
001
afonsocrg @afonsocrg.bsky.social · 03/01/2025
Have you ever thought of making your website bring your users together? Just like Google Docs, but on your website. Yes, it's possible, and it's extremely easy! Here's how: dev.to/afonsocrg/ad... #react #javascript #web #frontend #webdev
dev.to
Add Real-Time Collaboration to Your React App in 10 Minutes
The other day, someone I know messaged: "I found myself over the holiday trying to explain to my...
162
afonsocrg @afonsocrg.bsky.social · 25/12/2024
AoC 2024 - Day 25 "Code Chronicle" - ⭐️⭐️ Yey, it's done! To reduce search, I stored the locks in a tree of HashMaps, indexed by pin size. Thanks @was.tl and team for these challenges, it's been a fun journey!! Merry Christmas to everyone Code: github.com/afonsocrg/AoC #AdventOfCode #rust
040
afonsocrg @afonsocrg.bsky.social · 24/12/2024
AoC 2024 - Day 24 "Crossed Wires" - ⭐️⭐️ For Part 2, I checked which gates broke addition circuit rules: XOR outputs must feed into AND+XOR gates, and so on... Got a messy code, but found the 8 swapped wires! Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
140
afonsocrg @afonsocrg.bsky.social · 23/12/2024
AoC 2024 - Day 23 "LAN Party" - ⭐️⭐️ Got a fast solution by checking for complete subgraphs (TIL they're also known as cliques) while processing each edge. Used HashMaps and HashSets for faster lookup and intersections. Code: github.com/afonsocrg/AoC #AdventOfCode #rust
060
afonsocrg @afonsocrg.bsky.social · 22/12/2024
AoC 2024 - Day 22 "Monkey Market" - ⭐️⭐️ Used bit-wise operators to make the next number generation faster. For Part 2, stored diff sequences as 20 bit integers for faster lookup. Times: Part 1: 11.6ms Part 2: 147.8ms Code: github.com/afonsocrg/AoC #AdventOfCode #rust
070
afonsocrg @afonsocrg.bsky.social · 22/12/2024
AoC 2024 - Day 21 "Keypad Conundrum" - ⭐️⭐️ Defined the problem recursively and used caching to avoid re-computation of intermediate results. This one was a real conundrum. Happy with my execution times: Code: github.com/afonsocrg/AoC #AdventOfCode #rust
020
afonsocrg @afonsocrg.bsky.social · 20/12/2024
AoC 2024 - Day 20 "Race Condition" - ⭐️⭐️ Got a O(n) solution by storing the distance from each position to the end, and by checking for shortcuts in each position vicinity. Did a "diamond" for-loop for the first time, it was fun. Code: github.com/afonsocrg/AoC #AdventOfCode #rust
040
afonsocrg @afonsocrg.bsky.social · 19/12/2024
AoC 2024 - Day 19 "Linen Layout" - ⭐️⭐️ Memoization did the trick for this problem!! Also, instead of checking one pattern at a time, I checked if prefixes with different lengths existed in the pattern set, which sped up my solution by 4x. Code: github.com/afonsocrg/AoC #AdventOfCode #rust
Code implementation for Advent of Code 2024 day 19
050
afonsocrg @afonsocrg.bsky.social · 18/12/2024
AoC 2024 - Day 18 "RAM Run" - ⭐️⭐️ Reused the A* from day 16 (might implement a generic one). For part 2, a binary search got me the right answer in 400ms (took 13 attempts) Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
030
afonsocrg @afonsocrg.bsky.social · 17/12/2024
AoC 2024 - Day 17 "Chronospatial Computer" - ⭐️⭐️ Part 2 was a fun excuse to revisit Z3—it’s been five years since I last played around with it. Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
250
afonsocrg @afonsocrg.bsky.social · 16/12/2024
AoC 2024 - Day 16 "Reindeer Maze" - ⭐️⭐️ Tough one. A simple A* search was not enough: Pre-computed heuristics by running a Dijkstra's from the final position, which made a HUGE difference. Also skipped searching states that only had one neighbor Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
060
afonsocrg @afonsocrg.bsky.social · 15/12/2024
AoC 2024 - Day 15 "Warehouse Woes" - ⭐️⭐️ Loved using recursion in this one. And feeling super stoked to get it working right in the first try!! Also, made some fancy looking match expressions for the first time. Loving Rust so far 🦀 Code: github.com/afonsocrg/AoC #AdventOfCode #rust
020
afonsocrg @afonsocrg.bsky.social · 15/12/2024
AoC 2024 - Day 14 "Restroom Redoubt" - ⭐️⭐️ Used the modulo operator instead of doing the whole simulation to get a solution for P1 in 28.6µs. For P2, checked the first state with no overlap and there I found the Xmas tree! Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
030
afonsocrg @afonsocrg.bsky.social · 15/12/2024
AoC 2024 - Day 13 "Claw Contraption" - ⭐️⭐️ Felt good to finally put diophantine equations to use (studied them 7y ago). Also derived an equation system to determine the intersection of solutions in 2d. Fav challenge so far! Code: github.com/afonsocrg/AoC #AdventOfCode #rust
050
afonsocrg @afonsocrg.bsky.social · 12/12/2024
AoC 2024 - Day 12 "Garden Groups" - ⭐️⭐️ Used recursion to get area and perimeter. To find all sides I got all the edges in a HashSet, and removed the **adjacent** ones to count sides. The "E" example was very helpful! Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
040
afonsocrg @afonsocrg.bsky.social · 11/12/2024
AoC 2024 - Day 11 "Plutonian Pebbles" - ⭐️⭐️ LinkedLists were fast enough in Part 1. Memoization came to the rescue in Part 2. For some reason had to use u128 because I was having undetected overflows with u64... Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
120
afonsocrg @afonsocrg.bsky.social · 10/12/2024
AoC 2024 - Day 10 "Hoof It" - ⭐️⭐️ Unexpectedly simple, but a good treat! usizes and isizes in Rust are a bit of a pain, when it comes to searching in a 2d grid... How do other Rustaceans deal with those? Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
030
afonsocrg @afonsocrg.bsky.social · 09/12/2024
AoC 2024 - Day 9 "Disk Fragmenter" - ⭐️⭐️ Challenges starting to heat up! Managed to find a closed-form expression to get the checksum of a memory segment, which sped up things a lot! Code: github.com/afonsocrg/AoC #AdventOfCode #rust
020
afonsocrg @afonsocrg.bsky.social · 08/12/2024
AoC 2024 - Day 8 "Resonant Collinearity" - ⭐️⭐️ Spoiler alert: When I first read Part 1, I only considered the collinear points between the two antennas, which were not featured in the example. Happy I got it right first try Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
000
afonsocrg @afonsocrg.bsky.social · 07/12/2024
AoC 2024 - Day 7 "Bridge Repair" - ⭐️⭐️ Fun one. Implemented a basic DFS, but in which cases can we prune the search? Monotonically increasing values are a hint ;) Code: github.com/afonsocrg/AoC #AdventOfCode #rust
github.com
GitHub - afonsocrg/AoC: My solutions to Advent of Code
My solutions to Advent of Code. Contribute to afonsocrg/AoC development by creating an account on GitHub.
120
afonsocrg @afonsocrg.bsky.social · 06/12/2024
AoC 2024 - Day 6 "Guard Gallivant" - ⭐️⭐️ This one made me sweat... In part 2, got a fast solve by only testing obstruction placements along the exact path the guard would actually traverse, instead of testing every position =] Code: github.com/afonsocrg/AoC #AdventOfCode #rust
000
afonsocrg @afonsocrg.bsky.social · 05/12/2024
AoC 2024 - Day 5 "Print Queue" - ⭐️⭐️ Fun challenge! Opted to use HashMap and HashSet for faster rule lookups. For part 2, created an algorithm that would continuously swap out-of-order pairs. Fast enough :) Code: github.com/afonsocrg/Ao... #AdventOfCode #rust adventofcode.com/2024/day/5
adventofcode.com
Day 5 - Advent of Code 2024
010
afonsocrg @afonsocrg.bsky.social · 03/12/2024
"Mull It Over" was a fun challenge. Learned something today!! #AdventOfCode adventofcode.com/2024/day/3
adventofcode.com
Day 3 - Advent of Code 2024
040