New altML ship! We’ve put together an 11-minute “tech talk”, where we talk about the technical details of altML, and our experience while creating it.
altML is a chrome extension that uses machine learning to generate image captions for websites that don’t have them. Check it out at github.com/saharshy29/altML!
Done with binary classification algorithm
binary classification tasks that have two class labels.
• Email spam detection (spam or not).
• Churn prediction (churn or not).
• Conversion prediction (buy or not).
Source Code: github.com/Abubakarharuna10/Binary-Classification.git
created a small little thing that automatically takes what on my clipboard, creates a short link, and copies that to my clipboard. Needed to be able to run this with Alfred, so I experimented with a bunch of different stuff and it was a pain, but finally got it working in the end. Here’s the repo: go.srsh.link/aBwJR9. My explanation of it was kinda botched, but I’ll add more info to the readme soon.
This photo is from a wondrous night with @msw a few days ago…we sat out on the dock looking up at the glorious night sky & I saw the Milky Way I think for the first time. It was a solid day of infrastructure work today though—shipped a massive update to Hack Club Theme & little updates to a bunch of other sites, switched our asset hosting from CloudFront to Vercel, improved documentation on theme-starter, bugs on Bank. Lots of things I work on no one ever notices, but sometimes that’s the most important to work on.
Code is still available at github.com/MatthewStanciu/era-project
I just finished writing BirthdayBot, a wonderful Slack bot that posts a fancy image like this in #lounge when your birthday comes around! 🎉 Want to sign up? Just type /birthday to get started!
BirthdayBot is open source, written in Go !
Today I worked a little bit on the nixie clock firmware!
I added the thermometer mode (as the DS3231 as a temperature sensor), the handling of the mode button to cycle through the different modes, the cathode poisoning prevention algorithm and I changed a little bit how modes are registered to fix a bug in the cycle mode algorithm as std::map orders alphabetically with string keys so I replaced it with a std::vector so I can keep the original order.
The code below is the code of the thermometer mode, there's two display modes (if there's more than 4 nixie tubes) which just defines if the comma is on the same nixie tube as the last integer digit of the temperature.
Here's the commit if someone is interested: github.com/LambdAurora/nixie_clock/commit/1ca878372e1efada336288ecba3bab174d6ae272
I made a Python program with Selenium that bulk uploads videos to a CMS that a nonprofit I’m working with uses. I’m pretty proud of myself since this is the first project I’ve started and seen all the way through. If you want to check it out, the code is here: github.com/jasonappah/subsplashuploader
Hey there!!! Hope you are safe at 🏠 During the lockdown I built a BOT for Instagram using Python and Selenium which can automate and perform some tasks; makes your task easier. The Bot can show the list of un-followers from you Instagram or it can show your fans and also it can cancel all the pending follow requests which you have already sent before or it can aslo unfollow those who don't follow you back.
Do check out: github.com/swaaz/InstaBot
I've finally finished transferring my blog to github and deploying it! I have yet to come up with a halfway decent name for it, hence the temporary title of "Random Blog" and the url. I'm open to suggestions if y'all have any.
Yay -learned how to put websites online and published 3! 1st took me 12min to open a repo, open the folder in VS Code editor, then commit and push on GitHub desktop; 2nd time took me 7 mins and 3rd time took me 2mins 47 seconds !!🔥
Was a very long time since last post, my scrapbook posts should resume starting now!
Got a bit burned out of programming and hardware for some time and I got caught up by Fallout 4 😔
Today still nothing about nixie clock but I learned that the PSU I have soldered works miraculously as the ground pad for the controller is under the SMD component and it makes contact because I accidentally applied solder on that pad xD
Instead I'll present you my most recent work which involves again Minecraft modding and this time it involves a whole lot more rendering!
For those who plays with OptiFine you might know the "Better Grass/Snow" feature. I personally dislike it a lot and the first image might tell you why: it's too unnatural.
So I wanted to make a mod to solve this and do it kind of better than OptiFine! But how? Introducing blending on those blocks!
When loading the models I look into the resource packs and search for bettergrass states file, if it exists then it tells which variants of this block is actually affected and their bettergrass metadata file! The metadata JSON file is composed of layers with top/side textures definition and overrides textures definition for the blending, masks textures to automatically generate the blending texture with top and side textures, and which color index is affected.
Then I replace the vanilla baked model and introduce logic to choose the correct texture and at resource pack time I add a virtual resource pack which holds the generated textures, the texture generator is highly cursed.
And here's the result on grass/snowy grass, mycelium, warped nylium and podzol! You can change a lot through resource packs which is useful for mod authors and resource pack authors!
Some of the textures are not definitive but it's already better than OF's bettergrass I believe ;)
If anyone is interested in the source code and documentation: github.com/LambdAurora/LambdaBetterGrass
Tried and failed to go entirely through the flow of creating a basic website in VSCode editor, getting it onto GitHub and then onto my website. Ended up watching some beginner VSCode/GitHub videos but still pretty stuck. www.youtube.com/watch?v=Fk12ELJ9Bww
Today was the last day of SIP, and I've made so many memories and met so many amazing people over the past two weeks. Me and Kiana made a website for our final project (kayleyseow.github.io/SHEQUALITY), and presented it to Twitter partners today (I even had an amazing convo with Ms. Brand about bro culture in the workplace). Alas, virtual SIP isn't the same thing as a real one at Twitter, but I wouldn't give it up for the world.
Finally shipped my first GitHub action! This is for the README feature that is coming to GitHub profiles. It allows you to show off you tech stack with a badgified table! github.com/Matt-Gleich/profile_stack
Nixie Clock Update!
Today I added a lot of things to my mode system: timeout handling so it can timeouts a mode after an amount of seconds without any interaction to go back to the default mode which has cathode poisoning prevention (it avoids accidentally staying on a mode which doesn't have this), auto reset of the nixie array each update, initialization system for optimization, etc.
I also added the date mode! Which was quite difficult as I had to add two new configuration entries: date_full_year which determines if the year is fully displayed or only the two last digits and date_format which is the date format like YMD, MDY and DMY as default. The difficulty was figuring out how to display that correctly in the correct order with 4, 6, 8 or more nixie tubes!
I had the idea to put the date in a 8-bit unsigned int array in the format dd MM YYYY then I have another array which contains the indexes of the first array in an order which depends of the date format! It allowed me to make the display algorithm simple and understandable!
If anyone interested, here's the commit: github.com/LambdAurora/nixie_clock/commit/c37c5d1f649f646f165d2cd6f450de5699b74d43
Here's a simple Discord bot I made a while back - it uses the Canvas API (Canvas is what our teachers use to communicate with students) and finds the latest page with a Zoom meeting link and sends it to the channel, so people can instantly access the latest link and schedule!
Link to the GitHub repo!
made a small program that plots quadratic, cubic, logarithmic and trigonometric functions using matplotlib
planning on adding a UI to it, it also requires some optimisation <https://github.com/YashKarthik/plot_functions|github repo >
I had a pretty unproductive day today, I literally just did game theory the entire day. Funny story, our entire team's repo with our submission to the hackathon literally disappeared into thin air for a couple of hours and its back now but the github pages doesn't work... yet...
Anyways, I send my dad coding memes sometimes — here's my favorite meme I've ever sent to him.
After a weeklong break, I'm back to my unhealthy obsession with economics😬. Didn't really do much today. I followed a lot of people on github. I'll probably be going through my github and adding tags/editing descriptions for my repos, and maybe editing some old readme's.
🎸We made more progress on the _Summer of Making_ Smart Album Cover display… it finally listens to music playing in the room and gets the album cover! Here’s Tyler, The Creator’s*Flower Boy* and Drake’s _Nothing Was The Same_, which we think look exceptional 🌟. We’ve printed some of the parts for the frame (pictures on the GitHub Repo), and have to setup always listening and automatic volume adjustment, but after that it will be finished.
We started making our first prototype! It's going to be console text based, but we plan to use the Kivy Framework later on, as it's a cross platform Python Library that can be used on the Raspberry Pi. This is just a basis as we get into the swing of things, learning Python and setting ourselves up for learning and making.
Here's the link to the Github and a photo!
Not much is on there yet, but we are plan to get at least some units on a board tomorrow.
Today, I am attempting to change all of my GitHub branches from ‘master’ to ‘main’ to make my projects more welcoming to everyone. I believe that language in software matters, and this is a step I want to take to be an ally in the community. I’m super glad that GitHub has this in the pipeline to be automatic in the future! One issue I am running into is that GitHub Pages only supports the ‘master’ naming convention, so I am choosing to abandon GitHub Pages for my projects, and find alternate hosting methods.
Still working on the nixie clock firmware and... today there's a lot of changes in the code!
It was time to code the "modes" to switch between time and date displays, thermometer, configuration, etc. And it was a bit complicated to implement that in an easy and working way.
Also, display centering for huge number of nixie tubes is fun.
But now the modes are represented by classes with an update method and timeout to fall back to the default mode if no interaction was done for a certain amount of seconds.
I also added a code for the RTC module in case it losts power (but it shouldn't with its battery), in the case it lost power it will restore the last time and date the firmware knew which is its compilation time & date! I also had to search for an algorithm to determine the day of week from year, month and day of month; and I found the answer on the website of a Canadian university with a C code from 1993.
If anyone wants to see the changes: github.com/LambdAurora/nixie_clock/commit/22cac8b004324ba2eb293c8547379e5909bbe7e3
Began to work on the algorithm for the nixie tube array through shift registers!
I had a little trouble with a part of the code which resulted into an infinite loop because I forgot about unsigned integers and decrementation while writing the code.
In the screenshot look for the nixies variable which is the result of the work on that algorithm. (and nixie.hpp/nixie.cpp)
And I pushed it to GitHub (github.com/LambdAurora/nixie_clock/commit/04bec99740df109aa000040f4ac211a3f8c4e43f)!
I wrote a quick serverless Airtable-based link shortener! Inspired by @itsmingjie's version, but super stripped down (only ~20 lines of code) and hosted on Vercel. 🔗 https://github.com/MatthewStanciu/abls-serverless
One of my summer projects, which is the main one!
I'm currently working on a nixie clock project, which use, you guessed it, nixie tubes (IN-14) for its display.
You could tell me that there are kits for that, and yes there are, but it's not as fun as making one from scratch and the cool thing is I learn a lot about embedded programming and electronics!
Here there is a 3D printed support with 2 nixie tubes mounted on it and an electronic board behind with a shift register and nixie tube drivers (which are binary decoders) and there is a missing transformer (which really annoys me);
and there is my breadboard with an OtterPill, a shift register and 8 LEDs which represents the output of the shift register and there is a RTC module wired to the OtterPill and a Raspberry Pi which I only use to get the serial console output of the OtterPill (and the UART connection is super instable).
The nixie clock will be open-source and I'll try to make it in a way which you can build a nixie clock with 4, 6, or 8 nixie tubes with the same firmware (and maybe even the same PCB).
If anyone is interested, here's the GitHub repository, at the moment there is only the firmware with the RTC module/EEPROM and serial console code completed.
I and some friends created an application to a hackathon to truckers, the solution we created is called Sula and it's a social platform where truckers can ask for his rights and share experiences (we made this, because truckers have a lot of problems here). We have a lot of things to do to improve this app in this summer, and I will also translate it, so you guys can understand it 🙂
Backend with Node.js, TypeScript and GraphQL: github.com/sulatruck/backend
Frontend with React Native: github.com/sulatruck/frontend
Also, I think @Guilherme Farrel will publish the design of this app soon!
My internship group at @CodeDay Codelabs just wrapped up! I learned a lot, and I was in a group with some amazing people. Thank you @saharsh for being our mentor!
We created a short demo video about the chrome extension that we maa
In 4 weeks, we created altML. altML is a chrome extension that uses machine learning to generate image captions for websites that don’t have them. Check it out at github.com/saharshy29/altML!
I'm proud to announce the launch of Replier, a Slack app for setting up autoreplies! 🤖 🎉 Going on vacation or taking a break from Slack? 🌴 Cover all your bases by automatically letting people know. Try it out here!
Replier is open-source on GitHub, so feel free to open issues, contribute, or give it a 🌟!
Someone tried a brute force attack on my Pi today. Also, my server and database credentials + my code got stolen from a private GitHub repository through OAuth access tokens given to a code analysing app because their employee got phished ( a security company’s employee getting phished is 🤦♂️)
Fixed keypad. I had to resolder one of the switches because I cut one of the wires thinking that I had to resolder it anyway since it was touching another pad or something. Not the issue, just kinda dumb. I accidentally touched one of the key caps with the soldering iron so I have to reprint one of the key caps but I can only do that after the like 7 hour print I started earlier finishes.
I know a lot of people have this badge, but it feels special knowing that in 1000 years, if civilization gets wiped out, at least my descendants will be able to recreate my arduino project. 🥺 Also, as @blucashbaugh mentioned, my code is physically buried under a bunch of permafrost at the North Pole. Pretty fucking cool, imo.
Introducing... Contributor List! 🎉 It's a GitHub Action that automatically adds a cool contributor list to your README (like that one ⬇️) Don't like the default look? You can customize it to your heart's content with a Jinja template. Check it out! github.com/cjdenio/contributor_list#readme
Another one Deep Learning Face Recognition
i will be updating new stuffs with their codes through this repo
here is the codes and video
So Feel Free if you have any questions
Now seems like a good time to release Ship CLI 0.0.3! 🚀 You can now ship from an image/video URL 🖼️, provide a custom channel ID with the --channel option, get notified of future updates! Just run npm i -g hackclub-ship in your preferred terminal emulator, and you'll automatically get updated to v0.0.3. Changelog
Spent all day today fixing a ton of Scrappy bugs! Here's everything I did today:
• The streak resetter is called by a Zap that runs every hour, but it kept turning off every time it ran because I wasn't sending a response back. Now it's fixed and running every hour! 🕐
• We added text formatting (emojis, channels, and users) a while back, but posts made before that still appeared unformatted. So I wrote a script that formatted every scrapbook update since the beginning ⭐
• Scrappy now publicly links to the scrapbook profile of anyone who shares a CSS style so that anyone can see what the style looks like 🖌️
• If you had a custom scrapbook domain set and you ran /scrappy setdomain again to set a new one, it wouldn't remove your previous domain from Vercel. Now, it does!
• For a while, when you edited a message or shared an unfurled link in a thread, Scrappy would react with a beachball. Now, it doesn't do that anymore
• If you to set your status to a streak number that doesn't match your streak, Scrappy sets your status to a clown emoji. A few days ago I accidentally broke this feature, but I fixed it today! 🤡
• Yesterday, @saharsh submitted a pull request that automatically updates your scrapbook profile when you edit relevant profile information in your Slack profile. Today, I got that PR working, made a few changes, and merged it. Now when your profile picture, website, GitHub profile, and timezone change, it'll instantly be reflected on your scrapbook profile 🙌
• Today, I was made aware that Scrappy occasionally doesn't update people's status, either when they post an update or when their streak is reset. I believe I fixed the issue—I couldn't test it because I couldn't easily reproduce it, but if you notice your streak status not being properly updated, let me know so that I can investigate further!
• In case you didn't know, all full slack members can run /som-promote to promote a multi-channel guest to a full user in Slack. Now, when you do that, it notifies #welcome-committee that they've been promoted so that they can help them get acquainted with the rest of the community!
• And finally: previously when you uploaded large video files (>300MB), Scrappy would falsely tell you your video was successfully uploaded, only to silently fail and display an unsatisfying black screen on your profile. It was failing because 1) Slack wasn't serving the video near-instantly like it normally does with most files, so Scrappy was fetching an error page, and 2) even if Scrappy managed to fetch the large video, it crashed the Heroku dyno because it didn't have enough RAM to download the whole file. My largest project for today was getting large video files to work. Now, if you upload a file that's too big for Scrappy to download, it will wait for Slack to serve the file, upload it directly to Mux (the platform we use to serve video on the website), and notify you when it's processed. So go ahead and upload multi-minute videos now! 📹
If you find any other bugs in Scrappy, please let me know or open an issue in the GitHub repo (github.com/hackclub/scrappy) and I'll fix it. And of course, if you notice any of the bugs I supposedly fixed today persisting, please let me know so that I can look further into them and fix them for good.
Here's a picture of me giving a very good dog a belly rub
This semester, I took a course on Functional Programming in Haskell. I am surprised that Haskell is such a great programming language with less audience. As a course project, I chose to develop a Haskell Outlier Detection Package (HOD). github.com/KishoreKaushal/HOD
Hey there everyone 👋,
Also please suggest me what to make changes