#ruby on rails jobs
Explore tagged Tumblr posts
Text
Ruby on Rails: Why and When you should consider outsourcing your project?
We know we cannot simply rely on our instinct to outsource our Ruby on Rails web development project. However, technology and trust are the essential components that create an ethically sound and profitable organisation. Entrepreneurs that outsource expect outstanding results and outcomes because they trust and take a risk with their contractors.
Before hiring Ruby on Rails engineers for your company, you should check out and read through the complete guide we've provided in this blog. We start with a list of requirements that your desired offshore RoR developers' resumes must meet. Following that is a list of circumstances in which outsourcing RoR development makes sense and why.
Let's look at how to outsource Ruby on Rails development and some things to keep in mind.
Why you should hire outside developers for Ruby on Rails?

Right from cutting costs to hassle-free development, there are multiple benefits of outsourcing Ruby on Rails web development.
Cut costs
As opposed to full-time compensation, working for outsourced developers allows you to only pay for what you actually need. Depending on where the staff is assigned, you can qualify for reduced housing fees. Remember that the company you partner with must pay its employees a wage that is either more than or equal to the going wage in the area. Otherwise, your project's success could be jeopardised by employees with low qualifications or a high rate of turnover. What's worse is that it might constitute a breach of human rights, which, in addition to being immoral, might cause consumers to quit ships and criticise you in public.
Having access to top developers
The freedom from being limited to applicants in the same region or within the same region is the most evident benefit of outsourcing complicated technical work.
Scale No-hassle
More talent will also be accessible "on-demand." If a business only needs a VR developer for a single project, it makes little sense to hire a full-time specialist or spend money on a variety of cutting-edge tools.
Fulfil your organization's goals
When you outsource ruby on rails development to a far-off offshore development partner, you have more time to devote to your business goals. You are no longer required to feel outraged by management or developmental issues.
Start with Rocket Speed.
The Ruby on Rails development partner takes on all of your development responsibilities, freeing you to focus on your business outcomes. The developers can create hassle free projects thanks to the innovative techniques of Ruby on Rails development.
When Should You Think About Hiring Someone Else to Develop RoR?
In the following circumstances, it is best to outsource the RoR development project.
1.
Startups
Technical professionals can be difficult to find and time-consuming to hire. RoR's rapid expansion has led to an increase in its appeal among business owners. You may quickly develop a product, onboard the first users, and begin iterating using this Minimum Viable Product (MVP) building technique.
Ruby is advised as a language for creating MVPs (minimum viable products) that are both rapid and inexpensive to produce because it can handle complicated logic and require fewer lines of code. This language was frequently used to create prototypes, suggest modifications, and evaluate several software iterations prior to creating fully functional apps.
2.
Platforms for eCommerce
Ruby is perfect for the job since it can handle multiple transactions at once and is quick to expand, versatile, and affordable. For instance, Spree and Shopify were developed using the RoR framework. Despite Shopify's later move to only develop in Ruby, RoR is still a popular option for eCommerce applications.
3.
Social Media Applications
Ruby is appropriate for social networking applications since it can support traffic-heavy apps. Twitter was once a RoR undertaking. Right now, RoR offers businesses a fantastic basis for testing their ideas without committing to time-consuming and expensive development.
4.
Platforms for Complex Database Support
RoR is used by the best database websites in the world, including analytical portals and multi-platform portals. Bloomberg and GitHub are two ideal instances.
Things To Consider When Outsourcing RoR Web Development
To run successful projects, there are many aspects that you should consider before outsourcing your RoR web development project. Here, we have listed a few important factors that you should consider for a successful project deliverables.
a.
Set Specific Business Objectives
You must first understand the task at hand. It will help you choose the best vendor and collaboration strategy. Think about it:
· Do you have a concern but lack the knowledge to address it? Find businesses that specialise in creating custom software.
· Do you need to validate a product concept but are unsure how to make it a reality? Try to find vendors that offer an exploration phase.
· Are you in need of additional engineers? Think about contracting out your IT.
· assemble data and establish the task's parameters.
Every successful project begins with thorough planning, specific objectives, and input from all stakeholders. Gather requirements, discuss schedules, the system's projected capacity for growth, and scaling options. Try to anticipate how future interactions with corporate systems and third-party software will play out.
b.
Choose an Honest RoR Outsourcing Development Partner
Before you choose an offshore partner to build Ruby on Rails, you should consider the following factors:
· Check to see if the potential development provider has a strong background, credentials, and a sizable portfolio of diverse projects.
· Examine their prior case studies to confirm their veracity and dependability.
· Read the clutch reviews and testimonials.
· Make sure they adhere to organised processes; Agile technique is preferred.
c.
Establish Trust by Executing a Contract
To protect your identity and privacy, make sure the Ruby on Rails development company you hired executes a non-disclosure agreement (NDA).
Final thoughts
In conclusion, outsourcing your Ruby on Rails project can bring numerous benefits to your business, including cost savings, access to a wider pool of talent, and the ability to focus on your core competencies. However, outsourcing is not always the best option for every business, and there are some factors to consider before making a decision. By carefully evaluating your project needs, budget, and goals, you can determine whether outsourcing is the right choice for you. Whether you choose to outsource or not, working with a skilled and experienced Ruby on Rails development company can help you build a robust and scalable web application that meets the needs of your business and your customers.
FAQs:
Which company developed Ruby on Rails?
Ruby on Rails was developed by a Danish programmer named David Heinemeier Hansson while he was working at the web-based software company Basecamp (formerly known as 37signals) in 2004.
What is the salary of Ruby on Rails developer?
The salary of a Ruby on Rails developer varies based on factors such as experience level, location, and company size. According to Glassdoor, the average base salary for a Ruby on Rails developer in the United States is around $93,000 per year, while in India, it ranges from INR 5,00,000 to INR 12,00,000 per year depending on experience and location.
Is Ruby on Rails used in India?
Yes, Ruby on Rails is used in India. It is a popular web development framework in India and is widely used by startups, small and medium-sized businesses, and larger enterprises.
Are Ruby on Rails developers in demand?
Ruby on Rails developers are in demand, especially in the startup and technology industries. Many businesses are looking for developers with Ruby on Rails skills due to its efficiency, scalability, and ease of use. According to the job search website Indeed, the demand for Ruby on Rails developers has been on the rise in recent years, with a significant increase in job postings.
#ruby on rails#ruby on rails tutorial#ruby on rails interview questions#ruby on rails developer#what is ruby on rails#ruby on rails development#hire ruby on rails developers#ruby on rails developer salary#ruby on rails jobs#what is ruby on rails used for#ruby on rails development services#ruby on rails framework
0 notes
Text
#website development#ai solutions#custom software development#mobile application development#ui ux design#reactjs#javascript#figma#html css#generative ai#gen ai#ai writing#llm#ai technology#artificial intelligence#seo services#web development#flutter app development#hiring#ruby on rails development company#internship#freshers#career#job
0 notes
Text
Building a job for software developers board from scratch - the journey
It's been couple of months since I started building devjobspro.com - a job board for software developers.
It all started as a learning experiment - I wanted to give Ruby (the programming language) and Ruby on Rails (the framework) a go and see why people are so in love with this (kinda old-school, but still hot among tech founders) technology.
After couple of hours learning the basics, I already got a very basic, but functional job board. Couple of days into the journey, the job board started taking shape and I thought to myself...hey, why don't I just publish that thing online and see how it goes.
But I didn't just wanted this to be "yet another job board". I wanted it to be a very special one. That's why DevJobsPro focuses on top-tier companies and only the highest quality jobs on the market. It's not an easy task to do, though. It takes me roughly 2-3 hours a day to find, handpick and publish 3-5 jobs on the board. It's a hard work.
But it's totally worth it. I already have a couple of people reaching out to me, saying they found a job through the website, which is huge, to be honest.
Most job boards out there are either aggregating hundreds of thousands jobs, scraping the whole internet to do that, or are just waiting for companies to come and publish whatever open positions they have at the moment.
I wanted mine to be a bit different, by allowing for the option companies to post (after paying a very high fee, ensuring only high-quality, non-scam jobs are being added), but also me, being proactive, finding and posting the top-tier jobs on the market by myself.
The cool thing about my project is that it not only gives me space to learn and improve as a software developer, but also to deliver value to other people. That makes me happy.
That's the "long-story-short" version of how DevJobsPro came to be.
1 note
·
View note
Text
Unleash your inner developer with this beginner-friendly course. Learn Ruby's fundamentals step-by-step, with no prior coding experience needed. Build confidence and create real programs as you master concepts like variables, loops, and classes.
0 notes
Note
Bimbo!Reader that's dumb and normal except for the part she actually likes and support Mafia!König's killings,
"as long as you keep buying me stuff"
You let him fuck you seconds after he just shot some poor guy for not bringing enough money to the family. Or, maybe, for trying to fuck them over - you don't really care, not when your pussy is getting pounded by his large cock and his big hands are grasping your waist. Squeezing it, playing with soft skin. Kissing your neck all over and nuzzling in the crook close to your shoulders. Konig is weirdly clingy after killings - maybe he is trying to reinforce a soft and cuddly vibe on you, not letting you remember him as cruel. Not like you care, of course - not like you care where the money come from, as long as it pays for your dresses, expensive makeup and outings with the girls. You smile, pressing your lips against his cheek. At least he stopped wearing his mask around you - at least you can look at him properly. The face of a lover. You abuse the power you're holding over him, sometimes. Point your cute manicured finger in the general direction of a guy who wronged you. Maybe it's your ex - Konig wanted to kill all of your past partners themselves, but there are a few, particularly shitty, who you actually want to see dead. You point to a guy, and he is dead - Konig shoots him himself, letting you pick out the gun and maybe even a torture method if you want to be cruel. Konig calls you his cute little psycho and gives you some rubies as a little gift - red looks good on you, as he says. You don't even want to listen to him ramble about his job - but you spread your legs and let him rail his cock into your needy hole as he goes on and on about his day. It's like therapy to him - but he gets to kiss a pretty bimbo on her nose and nuzzle into her soft chest as she asks about the next big purchase. Of course he'd up the limit on your card -- you look too good in new dresses for him to stop giving you things, seriously.
848 notes
·
View notes
Text
Something Something...engines...
Uhh some stuff about the engines in my OAOTR (on and off the rails) AU
Uhh they were normal engines or something but Thomas woke up one day and decided to derail into some strange area and yeah they got blessed or something idk
They don't really have to eat but some engines are big backed and like the taste of food smh (Thomas, Gordon, Percy, etc)
They did NOT spawn with clothes so STH had to pay up and cover them up.
Uhh he converted the sheds into small rooms too or something
Diesel isn't shunting anyone outside of engine form you can probably guess why.
Someone save Victor he's overworked (Den N Dart are too)
Some engines do have other jobs but they prefer to work at the railway they're used to.
Ummm they are NOT capable of having children unless they adopt
Some engines still prefer to stay in engine form full time
I didn't make them fully humanized for a good reason (I like them bald/j)
Edward and Rubie are probably the only ones capable of reading and writing fully (the others know simple words but don't write much)
This goes for all of my AUs other than when they are human or any other creature.
Toad still needs to be pushed around in a wheelchair but bro doesn't mind
There aren't really any canon ships yet (I'm stupid ik)
7 notes
·
View notes
Note
Could I get some Arkos Headpats?
You certainly can, random citizen!
Beacon, Vol 1-2:
Jaune: *panting* …I did it…!
Cardin: *aura in the red* Ugh…! Lucky shot…!
Jaune: *excitedly runs over to the rail* Did you guys see that?!
Glynda: Winner, Mister Arc! Though since this is your first win since enrollment, I suggest that you-Mister Arc, are you listening to me?
Jaune: 😊
Pyrrha: *leaning over the railing and petting Jaune’s head* Good job, Jaune! You’re improving very quickly!
Jaune: 🥰
Vol 3 Finale:
Cinder: *standing over Pyrrha* 😈
Pyrrha: …So this is it…I had to try…but I wish I could see my friends again…and Jaune…
Pyrrha: *squeezes her eyes shut* …especially Jaune…
Ruby: Pyrrhaaaaa…!
*blinding flash*
Pyrrha: …w…what…?
Pyrrha: *feels herself pulled against something warm*
Pyrrha: *cracks her eyes open* …what…?
Pyrrha: *feels a hand on her head*
????: Don’t worry…I’ve got you…
Pyrrha: *opens her eyes and finds herself in a loving embrace with Jaune, who is glowing white and petting her hair while Ruby stands over an unconscious Cinder*
Jaune: Don’t worry, Pyrrha…everything is going to be all right…! *pets Pyrrha’s head*
Pyrrha: 😮💨
Pyrrha: Everything is all right…🥹
#rwby#jaune arc#pyrrha nikos#ruby rose#cinder fall#arkos#jaune x pyrrha#jaune arc X Pyrrha Nikos#sturgeon asks
142 notes
·
View notes
Note
Any monsterfucker romances recs since Halloween is upon us?
I haven't read a ton of monster romance, but I'd recommend these"
Hollow by C.M. Nascosta seems like necessary Halloween reading for me. It's a two-story bind-up in which one of the stories involves Katrina falling for the headless horseman and looking for a way for them to be together... Kind of a dark way.... And the other of which is Ichabod Crane getting railed in a locker room by two headless horsemen. I am not kidd.
Then there's Nascosta's Run, Run Rabbit, my favorite things she's done, about werewolf lawyers fucking nasty because they hate each other and then falling in love by accident. This is VERY wolfy, and involves some shifted sex, which is why I'll include it under monsterfucking (which I see as something separate from like, normal paranormal romance that has more humanoid characters).
How to Marry a Marble Marquis by Nascosta is a historical monster romance in which the (human) heroine is trying to find a husband, and seeks help from a slutty gargoyle marquis who is totally fine with her using him to get off while he's sleeping (and also a statue), among other things. Historical romance girlies, this is for youuuu
A Lady of Rooksgrave Manor by Kathryn Moon is a polyamorous erotic historical monster romance. The heroine is a sex worker who takes on the job to sleep with monsters and keep them happy, but she ends up making a real relationship with... a handful of them. I think there's a sphynx, a vampire, a Jekyll/Hyde type, a gollum, an inviisble dude, and... I think that's it but I HONESTLY can't be sure. The Basilisk of Star Manor is set in the same world, but the heroine only handles one guy. A basilisk.
Bound to the Shadow Prince by Ruby Dixon is a fun fantasy romance in which the hero is a GIANT GARGOYLE THING. And also a virgin! The heroine is a princess who must fulfill this like, ancient rite thing by staying locked in a castle with him for... seven years, I wanna say? But then they get horny. As one does.
And then, if you are down for more conventional paranormals... Immortals After Dark has vampires, werewolves, ghosts, demons, witches, sorceresses, that one guy with wings, valkyries, succubi.... It's just got a lot. Lothaire awaits, people. Every romance reader has gotta read Lothaire. (Unless, you know, it would be harmful lol.) Come on now. Everyone says you've gotta read for the blood blowjob, but A Hunger Like No Other has a blood blowjob. Lothaire has a blood 69 lmao
#romance novel blogging#book recs#romance novels#but also there are other IAD books i'd recommend reading before lothaire...... however i'm told lothaire can be read as a standalone#I just didn't so i wouldn't know what that experience is like#i'm sure it's fine#this is my emotional support evil vampire and the trailer trash girl who makes him cry like a little bitch!
16 notes
·
View notes
Text
Back on my slow, full series rewatch of SPN and noticing some things in S4 about the theme of Sam and Dean’s specialness and Dean’s love/hate relationship with hunting and the nature of Sam and Dean as heroes.
Sam post first. I’ll post the Dean one separately.
In season 4 leading up to 4.15 Death Takes a Holiday (written by Jeremy Carver) Sam’s been training with Ruby, drinking demon blood, and developing his demon-related powers more strongly. Dean’s been uneasy about that. And running alongside this is Sam increasingly growing drunk on power, as well as his detachment and sense of specialness.
SAM Look, I don't want them to die, either, Dean, but there's a natural order. DEAN You're kidding, right? SAM What? DEAN You don't see the irony in that? I mean, you and me, we're like the poster boys of the unnatural order. All we do is ditch death. SAM Yeah, but the normal rules don't really apply to us, do they? DEAN stares. DEAN We're no different than anybody else. SAM I'm infected with demon blood. You've been to hell. DEAN looks away. SAM Look, I know you want to think of yourself as Joe the Plumber, Dean, but you're not. Neither am I. The sooner you accept that, the better off you're gonna be.
It’s not that Sam is 100% wrong. Their job, their lives, are unusual, they do have to deal with weirdness most people don’t, in a highly dangerous, unpaid job, Sam does have demon blood powers, Dean has been to hell. But there’s also a bunch of things in Sam’s pov here that is linked to his S4 overall arc of going off the rails, moving away from who he is.
Way back in S4, there’s in-story comment on how Sam and Dean have plot armor while other characters don’t. Via Sam expressing an alarming sense of superiority—rules don’t apply to them, if other people die too bad it’s the natural order, they’re special. This isn’t Sam (and I really appreciate Sam’s sense of horror during the S14 reveal about the plot armor). Sam’s got his head twisted around here. Sam’s talk about specialness screams of Sam falling for Ruby’s cosmic trap, priming him to get where he needs to be to set Lucifer free.
One of the things that was so appealing to me about SPN is Sam and Dean’s ordinariness as heroes. They’re just a couple of guys from Lawrence, Kansas yanked into the world of the supernatural. They’re both the everyperson pov, while they’re also both outsiders and “freaks.” Sam and Dean often have to reject “great destinies” that cosmic beings try to force upon them, they rebel, tear up the pages, make the story their own. Free will was always a big theme on the show. Rebelling against the cosmic being manipulated system.
15 notes
·
View notes
Text
I went back and looked over the discussion where the MC and Ruby discuss the body and its placement. I will be speaking from my own educational background in legal studies and criminal justice and from my own work experience past and current present in the same field as well, so take that as you will.
The MC and Ruby note that Sebastyan's blood was found mostly outside of the box not inside of it. They also discuss the fact that if this was a hit job, they would've left his body dangling over the railing, but from the fact his body was turned around and placed in a chair, they conclude the suggestion that someone cared about him enough to make him look presentable and preserve some dignity.
Two things. First, any type of strangulation/suffocation/asphyxiation indicates that the person knew their killer, or knew them well enough to not be on top of their guard. Being in quarters that close with someone else never happens unless you comfortably know the person to let them invade your personal space in such an intimate manner.
Second, Sebastyan's body was placed into a chair, indicating his killer took the time to set up the crime scene. If anything gets altered in a crime scene, it usually means someone is trying to hide something or conceal something. In this case, Sebastyan's killer may NOT have been someone who had a close/caring relationship with him as the MC and Ruby seem to suggest. Sebastyan's body could've been placed in that manner to lead the MC in that direction, which effectively throws the suspicion off of them. Same thing what happens with arsons quite a bit. Normally, in some arsons, the person sets the place on fire to cover up another crime they committed or to destroy evidence of the first crime they committed. Either way, the original crime is altered to throw off suspicion and lead the investigators onto a different trail.
If the story is moving towards Astrid being the killer, which makes sense and she's one a of my top 2 suspects at this point in the story, it would make more sense for Astrid to arrange Sebastyan in a way that points to someone else, namely, someone who cared about him, i.e. Vasili and Lydea to throw the suspicion off of her and onto to someone else.
Remember, Olivia said that Astrid was smarter than she appeared and a master manipulator. But remember the one thing Olivia mentioned about Astrid before as well...
Astrid was never able to be definitively tied to any murders or crimes in which she had been suspected in.
Do you see where I'm going with this now?
46 notes
·
View notes
Text
Vibecoding a production app
TL;DR I built and launched a recipe app with about 20 hours of work - recipeninja.ai
Background: I'm a startup founder turned investor. I taught myself (bad) PHP in 2000, and picked up Ruby on Rails in 2011. I'd guess 2015 was the last time I wrote a line of Ruby professionally. I've built small side projects over the years, but nothing with any significant usage. So it's fair to say I'm a little rusty, and I never really bothered to learn front end code or design.
In my day job at Y Combinator, I'm around founders who are building amazing stuff with AI every day and I kept hearing about the advances in tools like Lovable, Cursor and Windsurf. I love building stuff and I've always got a list of little apps I want to build if I had more free time.
About a month ago, I started playing with Lovable to build a word game based on Articulate (it's similar to Heads Up or Taboo). I got a working version, but I quickly ran into limitations - I found it very complicated to add a supabase backend, and it kept re-writing large parts of my app logic when I only wanted to make cosmetic changes. It felt like a toy - not ready to build real applications yet.
But I kept hearing great things about tools like Windsurf. A couple of weeks ago, I looked again at my list of app ideas to build and saw "Recipe App". I've wanted to build a hands-free recipe app for years. I love to cook, but the problem with most recipe websites is that they're optimized for SEO, not for humans. So you have pages and pages of descriptive crap to scroll through before you actually get to the recipe. I've used the recipe app Paprika to store my recipes in one place, but honestly it feels like it was built in 2009. The UI isn't great for actually cooking. My hands are covered in food and I don't really want to touch my phone or computer when I'm following a recipe.
So I set out to build what would become RecipeNinja.ai
For this project, I decided to use Windsurf. I wanted a Rails 8 API backend and React front-end app and Windsurf set this up for me in no time. Setting up homebrew on a new laptop, installing npm and making sure I'm on the right version of Ruby is always a pain. Windsurf did this for me step-by-step. I needed to set up SSH keys so I could push to GitHub and Heroku. Windsurf did this for me as well, in about 20% of the time it would have taken me to Google all of the relevant commands.
I was impressed that it started using the Rails conventions straight out of the box. For database migrations, it used the Rails command-line tool, which then generated the correct file names and used all the correct Rails conventions. I didn't prompt this specifically - it just knew how to do it. It one-shotted pretty complex changes across the React front end and Rails backend to work seamlessly together.
To start with, the main piece of functionality was to generate a complete step-by-step recipe from a simple input ("Lasagne"), generate an image of the finished dish, and then allow the user to progress through the recipe step-by-step with voice narration of each step. I used OpenAI for the LLM and ElevenLabs for voice. "Grandpa Spuds Oxley" gave it a friendly southern accent.
Recipe summary:
And the recipe step-by-step view:
I was pretty astonished that Windsurf managed to integrate both the OpenAI and Elevenlabs APIs without me doing very much at all. After we had a couple of problems with the open AI Ruby library, it quickly fell back to a raw ruby HTTP client implementation, but I honestly didn't care. As long as it worked, I didn't really mind if it used 20 lines of code or two lines of code. And Windsurf was pretty good about enforcing reasonable security practices. I wanted to call Elevenlabs directly from the front end while I was still prototyping stuff, and Windsurf objected very strongly, telling me that I was risking exposing my private API credentials to the Internet. I promised I'd fix it before I deployed to production and it finally acquiesced.
I decided I wanted to add "Advanced Import" functionality where you could take a picture of a recipe (this could be a handwritten note or a picture from a favourite a recipe book) and RecipeNinja would import the recipe. This took a handful of minutes.
Pretty quickly, a pattern emerged; I would prompt for a feature. It would read relevant files and make changes for two or three minutes, and then I would test the backend and front end together. I could quickly see from the JavaScript console or the Rails logs if there was an error, and I would just copy paste this error straight back into Windsurf with little or no explanation. 80% of the time, Windsurf would correct the mistake and the site would work. Pretty quickly, I didn't even look at the code it generated at all. I just accepted all changes and then checked if it worked in the front end.
After a couple of hours of work on the recipe generation, I decided to add the concept of "Users" and include Google Auth as a login option. This would require extensive changes across the front end and backend - a database migration, a new model, new controller and entirely new UI. Windsurf one-shotted the code. It didn't actually work straight away because I had to configure Google Auth to add `localhost` as a valid origin domain, but Windsurf talked me through the changes I needed to make on the Google Auth website. I took a screenshot of the Google Auth config page and pasted it back into Windsurf and it caught an error I had made. I could login to my app immediately after I made this config change. Pretty mindblowing. You can now see who's created each recipe, keep a list of your own recipes, and toggle each recipe to public or private visibility. When I needed to set up Heroku to host my app online, Windsurf generated a bunch of terminal commands to configure my Heroku apps correctly. It went slightly off track at one point because it was using old Heroku APIs, so I pointed it to the Heroku docs page and it fixed it up correctly.
I always dreaded adding custom domains to my projects - I hate dealing with Registrars and configuring DNS to point at the right nameservers. But Windsurf told me how to configure my GoDaddy domain name DNS to work with Heroku, telling me exactly what buttons to press and what values to paste into the DNS config page. I pointed it at the Heroku docs again and Windsurf used the Heroku command line tool to add the "Custom Domain" add-ons I needed and fetch the right Heroku nameservers. I took a screenshot of the GoDaddy DNS settings and it confirmed it was right.
I can see very soon that tools like Cursor & Windsurf will integrate something like Browser Use so that an AI agent will do all this browser-based configuration work with zero user input.
I'm also impressed that Windsurf will sometimes start up a Rails server and use curl commands to check that an API is working correctly, or start my React project and load up a web preview and check the front end works. This functionality didn't always seem to work consistently, and so I fell back to testing it manually myself most of the time.
When I was happy with the code, it wrote git commits for me and pushed code to Heroku from the in-built command line terminal. Pretty cool!
I do have a few niggles still. Sometimes it's a little over-eager - it will make more changes than I want, without checking with me that I'm happy or the code works. For example, it might try to commit code and deploy to production, and I need to press "Stop" and actually test the app myself. When I asked it to add analytics, it went overboard and added 100 different analytics events in pretty insignificant places. When it got trigger-happy like this, I reverted the changes and gave it more precise commands to follow one by one.
The one thing I haven't got working yet is automated testing that's executed by the agent before it decides a task is complete; there's probably a way to do it with custom rules (I have spent zero time investigating this). It feels like I should be able to have an integration test suite that is run automatically after every code change, and then any test failures should be rectified automatically by the AI before it says it's finished.
Also, the AI should be able to tail my Rails logs to look for errors. It should spot things like database queries and automatically optimize my Active Record queries to make my app perform better. At the moment I'm copy-pasting in excerpts of the Rails logs, and then Windsurf quickly figures out that I've got an N+1 query problem and fixes it. Pretty cool.
Refactoring is also kind of painful. I've ended up with several files that are 700-900 lines long and contain duplicate functionality. For example, list recipes by tag and list recipes by user are basically the same.
Recipes by user:
This should really be identical to list recipes by tag, but Windsurf has implemented them separately.
Recipes by tag:
If I ask Windsurf to refactor these two pages, it randomly changes stuff like renaming analytics events, rewriting user-facing alerts, and changing random little UX stuff, when I really want to keep the functionality exactly the same and only move duplicate code into shared modules. Instead, to successfully refactor, I had to ask Windsurf to list out ideas for refactoring, then prompt it specifically to refactor these things one by one, touching nothing else. That worked a little better, but it still wasn't perfect
Sometimes, adding minor functionality to the Rails API will often change the entire API response, rather just adding a couple of fields. Eg It will occasionally change Index Recipes to nest responses in an object { "recipes": [ ] }, versus just returning an array, which breaks the frontend. And then another minor change will revert it. This is where adding tests to identify and prevent these kinds of API changes would be really useful. When I ask Windsurf to fix these API changes, it will instead change the front end to accept the new API json format and also leave the old implementation in for "backwards compatibility". This ends up with a tangled mess of code that isn't really necessary. But I'm vibecoding so I didn't bother to fix it.
Then there was some changes that just didn't work at all. Trying to implement Posthog analytics in the front end seemed to break my entire app multiple times. I tried to add user voice commands ("Go to the next step"), but this conflicted with the eleven labs voice recordings. Having really good git discipline makes vibe coding much easier and less stressful. If something doesn't work after 10 minutes, I can just git reset head --hard. I've not lost very much time, and it frees me up to try more ambitious prompts to see what the AI can do. Less technical users who aren't familiar with git have lost months of work when the AI goes off on a vision quest and the inbuilt revert functionality doesn't work properly. It seems like adding more native support for version control could be a massive win for these AI coding tools.
Another complaint I've heard is that the AI coding tools don't write "production" code that can scale. So I decided to put this to the test by asking Windsurf for some tips on how to make the application more performant. It identified I was downloading 3 MB image files for each recipe, and suggested a Rails feature for adding lower resolution image variants automatically. Two minutes later, I had thumbnail and midsize variants that decrease the loading time of each page by 80%. Similarly, it identified inefficient N+1 active record queries and rewrote them to be more efficient. There are a ton more performance features that come built into Rails - caching would be the next thing I'd probably add if usage really ballooned.
Before going to production, I kept my promise to move my Elevenlabs API keys to the backend. Almost as an afterthought, I asked asked Windsurf to cache the voice responses so that I'd only make an Elevenlabs API call once for each recipe step; after that, the audio file was stored in S3 using Rails ActiveStorage and served without costing me more credits. Two minutes later, it was done. Awesome.
At the end of a vibecoding session, I'd write a list of 10 or 15 new ideas for functionality that I wanted to add the next time I came back to the project. In the past, these lists would've built up over time and never gotten done. Each task might've taken me five minutes to an hour to complete manually. With Windsurf, I was astonished how quickly I could work through these lists. Changes took one or two minutes each, and within 30 minutes I'd completed my entire to do list from the day before. It was astonishing how productive I felt. I can create the features faster than I can come up with ideas.
Before launching, I wanted to improve the design, so I took a quick look at a couple of recipe sites. They were much more visual than my site, and so I simply told Windsurf to make my design more visual, emphasizing photos of food. Its first try was great. I showed it to a couple of friends and they suggested I should add recipe categories - "Thai" or "Mexican" or "Pizza" for example. They showed me the DoorDash app, so I took a screenshot of it and pasted it into Windsurf. My prompt was "Give me a carousel of food icons that look like this". Again, this worked in one shot. I think my version actually looks better than Doordash 🤷♂️
Doordash:
My carousel:
I also saw I was getting a console error from missing Favicon. I always struggle to make Favicon for previous sites because I could never figure out where they were supposed to go or what file format they needed. I got OpenAI to generate me a little recipe ninja icon with a transparent background and I saved it into my project directory. I asked Windsurf what file format I need and it listed out nine different sizes and file formats. Seems annoying. I wondered if Windsurf could just do it all for me. It quickly wrote a series of Bash commands to create a temporary folder, resize the image and create the nine variants I needed. It put them into the right directory and then cleaned up the temporary directory. I laughed in amazement. I've never been good at bash scripting and I didn't know if it was even possible to do what I was asking via the command line. I guess it is possible.
After launching and posting on Twitter, a few hundred users visited the site and generated about 1000 recipes. I was pretty happy! Unfortunately, the next day I woke up and saw that I had a $700 OpenAI bill. Someone had been abusing the site and costing me a lot of OpenAI credits by creating a single recipe over and over again - "Pasta with Shallots and Pineapple". They did this 12,000 times. Obviously, I had not put any rate limiting in.
Still, I was determined not to write any code. I explained the problem and asked Windsurf to come up with solutions. Seconds later, I had 15 pretty good suggestions. I implemented several (but not all) of the ideas in about 10 minutes and the abuse stopped dead in its tracks. I won't tell you which ones I chose in case Mr Shallots and Pineapple is reading. The app's security is not perfect, but I'm pretty happy with it for the scale I'm at. If I continue to grow and get more abuse, I'll implement more robust measures.
Overall, I am astonished how productive Windsurf has made me in the last two weeks. I'm not a good designer or frontend developer, and I'm a very rusty rails dev. I got this project into production 5 to 10 times faster than it would've taken me manually, and the level of polish on the front end is much higher than I could've achieved on my own. Over and over again, I would ask for a change and be astonished at the speed and quality with which Windsurf implemented it. I just sat laughing as the computer wrote code.
The next thing I want to change is making the recipe generation process much more immediate and responsive. Right now, it takes about 20 seconds to generate a recipe and for a new user it feels like maybe the app just isn't doing anything.
Instead, I'm experimenting with using Websockets to show a streaming response as the recipe is created. This gives the user immediate feedback that something is happening. It would also make editing the recipe really fun - you could ask it to "add nuts" to the recipe, and see as the recipe dynamically updates 2-3 seconds later. You could also say "Increase the quantities to cook for 8 people" or "Change from imperial to metric measurements".
I have a basic implementation working, but there are still some rough edges. I might actually go and read the code this time to figure out what it's doing!
I also want to add a full voice agent interface so that you don't have to touch the screen at all. Halfway through cooking a recipe, you might ask "I don't have cilantro - what could I use instead?" or say "Set a timer for 30 minutes". That would be my dream recipe app!
Tools like Windsurf or Cursor aren't yet as useful for non-technical users - they're extremely powerful and there are still too many ways to blow your own face off. I have a fairly good idea of the architecture that I want Windsurf to implement, and I could quickly spot when it was going off track or choosing a solution that was inappropriately complicated for the feature I was building. At the moment, a technical background is a massive advantage for using Windsurf. As a rusty developer, it made me feel like I had superpowers.
But I believe within a couple of months, when things like log tailing and automated testing and native version control get implemented, it will be an extremely powerful tool for even non-technical people to write production-quality apps. The AI will be able to make complex changes and then verify those changes are actually working. At the moment, it feels like it's making a best guess at what will work and then leaving the user to test it. Implementing better feedback loops will enable a truly agentic, recursive, self-healing development flow. It doesn't feel like it needs any breakthrough in technology to enable this. It's just about adding a few tool calls to the existing LLMs. My mind races as I try to think through the implications for professional software developers.
Meanwhile, the LLMs aren't going to sit still. They're getting better at a frightening rate. I spoke to several very capable software engineers who are Y Combinator founders in the last week. About a quarter of them told me that 95% of their code is written by AI. In six or twelve months, I just don't think software engineering is going exist in the same way as it does today. The cost of creating high-quality, custom software is quickly trending towards zero.
You can try the site yourself at recipeninja.ai
Here's a complete list of functionality. Of course, Windsurf just generated this list for me 🫠
RecipeNinja: Comprehensive Functionality Overview
Core Concept: the app appears to be a cooking assistant application that provides voice-guided recipe instructions, allowing users to cook hands-free while following step-by-step recipe guidance.
Backend (Rails API) Functionality
User Authentication & Authorization
Google OAuth integration for user authentication
User account management with secure authentication flows
Authorization system ensuring users can only access their own private recipes or public recipes
Recipe Management
Recipe Model Features:
Unique public IDs (format: "r_" + 14 random alphanumeric characters) for security
User ownership (user_id field with NOT NULL constraint)
Public/private visibility toggle (default: private)
Comprehensive recipe data storage (title, ingredients, steps, cooking time, etc.)
Image attachment capability using Active Storage with S3 storage in production
Recipe Tagging System:
Many-to-many relationship between recipes and tags
Tag model with unique name attribute
RecipeTag join model for the relationship
Helper methods for adding/removing tags from recipes
Recipe API Endpoints:
CRUD operations for recipes
Pagination support with metadata (current_page, per_page, total_pages, total_count)
Default sorting by newest first (created_at DESC)
Filtering recipes by tags
Different serializers for list view (RecipeSummarySerializer) and detail view (RecipeSerializer)
Voice Generation
Voice Recording System:
VoiceRecording model linked to recipes
Integration with Eleven Labs API for text-to-speech conversion
Caching of voice recordings in S3 to reduce API calls
Unique identifiers combining recipe_id, step_id, and voice_id
Force regeneration option for refreshing recordings
Audio Processing:
Using streamio-ffmpeg gem for audio file analysis
Active Storage integration for audio file management
S3 storage for audio files in production
Recipe Import & Generation
RecipeImporter Service:
OpenAI integration for recipe generation
Conversion of text recipes into structured format
Parsing and normalization of recipe data
Import from photos functionality
Frontend (React) Functionality
User Interface Components
Recipe Selection & Browsing:
Recipe listing with pagination
Real-time updates with 10-second polling mechanism
Tag filtering functionality
Recipe cards showing summary information (without images)
"View Details" and "Start Cooking" buttons for each recipe
Recipe Detail View:
Complete recipe information display
Recipe image display
Tag display with clickable tags
Option to start cooking from this view
Cooking Experience:
Step-by-step recipe navigation
Voice guidance for each step
Keyboard shortcuts for hands-free control:
Arrow keys for step navigation
Space for play/pause audio
Escape to return to recipe selection
URL-based step tracking (e.g., /recipe/r_xlxG4bcTLs9jbM/classic-lasagna/steps/1)
State Management & Data Flow
Recipe Service:
API integration for fetching recipes
Support for pagination parameters
Tag-based filtering
Caching mechanisms for recipe data
Image URL handling for detailed views
Authentication Flow:
Google OAuth integration using environment variables
User session management
Authorization header management for API requests
Progressive Web App Features
PWA capabilities for installation on devices
Responsive design for various screen sizes
Favicon and app icon support
Deployment Architecture
Two-App Structure:
cook-voice-api: Rails backend on Heroku
cook-voice-wizard: React frontend/PWA on Heroku
Backend Infrastructure:
Ruby 3.2.2
PostgreSQL database (Heroku PostgreSQL addon)
Amazon S3 for file storage
Environment variables for configuration
Frontend Infrastructure:
React application
Environment variable configuration
Static buildpack on Heroku
SPA routing configuration
Security Measures:
HTTPS enforcement
Rails credentials system
Environment variables for sensitive information
Public ID system to mask database IDs
This comprehensive overview covers the major functionality of the Cook Voice application based on the available information. The application appears to be a sophisticated cooking assistant that combines recipe management with voice guidance to create a hands-free cooking experience.
2 notes
·
View notes
Text
DnDoc, Space Band #5 - Exploring the SECC
Part 1 Part 4
Previous story: DnDoc, Coming Home
---
Half an hour in front of the dressing table and a trawl through the accessory box later, Rogue looked in the mirror and saw someone who could pass for at least a singer-songwriter touring his debut album, even if not a full on rockstar. His eyes were shadowy, his hair in wavy curls tumbling down his forehead, his wrists decked out in leather wristbands, and the Doctor had even found some cool boots like his own for him. He snuck a little air guitar in front of the full-length mirror when nobody was looking. Ruby had by this point found a crop top she was happy with and the Doctor had done some rockstar makeup for her too, so all three of them were ready to hit the streets of the SECC.
Stardust City, as it turned out it was called by inhabitants, was surprisingly quiet for the night of an Earthlings concert. Rogue supposed it was possible that they weren't quite as popular these days, what with their core demographic growing up. Although, he hadn't actually asked what year they were in. Maybe there was a ten-year-old Rogue out there somewhere wishing he was here, with no idea that he actually was!
"Oops, that explains a lot," said the Doctor. He pointed at a clock tower which said it was only 5PM. It looked like they were going to have a lot of time to kill before the gig, and they'd already eaten dinner on the TARDIS while they got ready.
"The portal must have been that excited," said Ruby.
"I've definitely seen better drivers, yes," said the Doctor. "Oh well, I guess if we're here super early we can get right down the front so that's exciting."
The Doctor led the way through wide streets with large, blocky conference centres on each side, past a park with a giant gazebo, then down into a long, gently curving boulevard. Across the boulevard the standing area for an utterly enormous outdoor stage began, and as Rogue looked from left to right he saw that the curve of the street hugged its boundary the whole way round.
"Uhoh, someone looks like they were out a little late last night," said the Doctor, nodding his head forwards.
Someone was staggering along the boulevard on the other side of the road, their hand juddering along the black metal railing. The Doctor and Ruby rushed forward to give them a hand and hold them up. Rogue started, then realised that right, yes, this was what they did. No observation or evaluation, just straight in there.
"Hey, what's the matter?" the Doctor was saying as Rogue joined them.
The person seemed to be human, with worryingly pale skin and brightly coloured dots breaking out all over their face. Their hair was lanky and hung forward over the front of their shirt, but Rogue had a feeling this wasn't the fashionable sort of grunge. They looked seriously ill.
"Stardust," they mumbled. Their saliva collected on their lips and dribbled down - also a strange colour, or at least a strange pattern. Really saliva having a pattern at all was quite strange.
"Stardust City, yeah, that's where you are, mate," said Ruby. She and the Doctor let the person lean on them the way they had helped Rogue yesterday. They lowered them down to the pavement and leaned them against the railing.
"No, stardust. Sickness. Call help. Please," said the person, rubbing at their eyes. Their hands came away blotchy, bright yellows and greens and blues and reds streaking across their palms.
The Doctor got the sonic out and pressed it in the same spot three times. "Okay, that should call the emergency services."
Rogue helped the Doctor and Ruby keep the person conscious until the ambulance got there and two paramedics jumped out to help.
"Good job getting the call in," said the first paramedic as she brushed the three travellers out the way and started some examinations of the person. "Stardust overload isn't deadly, but it can knock you right out without much warning. Nobody wants to wake up alone on the street after that."
"Stardust overload?" the Doctor asked.
"They named it after this city, yes," said the paramedic, a short woman with curt blonde hair. "It can happen when you're constantly surrounded by music, art, ideas. Like trying to fit too much excitement in one person."
"Will they be okay?" asked Rogue.
"Now that we've got them, yes," said the paramedic. Her colleague was loading the patient in on a stretcher. Rogue was standing closest to them as they passed and the patient managed to reach up one hand and give his arm a quick squeeze in thanks. The paramedic went on, "Don't you folks worry. Go enjoy your night, but if you start to see multi-coloured spots that aren't part of any light show, do seek medical attention."
The paramedics sped away with their patient and left them standing at the barrier.
"Maybe that explains the empty streets," said Rogue. "An epidemic of some sort."
"We can go back to the TARDIS any time, you know," said the Doctor.
"No, no, it's fine," said Rogue. "Like she said, if anyone starts to feel ill, we can go see a doctor. I mean hey, we have you. As long as you two are okay with that?"
"I'm good," said the Doctor. "Ruby?"
"Hell yeah." Ruby did the rock-horns with her right hand, though with a slightly sheepish smile which suggested this wasn't quite her genre.
"Alright, let's go," said Rogue.
---
Part 6
@off-traveling-in-the-stars @casavanse @monster-donut @letsargueacrossthestars (let me know at any point if you no longer wish to be tagged in each post)
6 notes
·
View notes
Text
Hey all, if any of you know someone looking for a Backend Dev, I got laid off. I'm good with Groovy and SpringBoot and can learn pretty much any environment. I have passing familiarity with Ruby on Rails and Django, and most kinds of commonly used databases.
In the past I've been a Frontend Dev as well. Primarily focused on Bootstrap, Next.JS, and React, using standard HTML/JS/CSS stack.
I've been learning GameBoy programming in my free time and finding a joy in Small Device programming that might extend well to a junior embedded systems job.
I've worked on major systems used by colleges and libraries, and I've worked on a scheduling system with ~500 medical facilities as their customers.
You might have seen my posts about Computer Science. If they seem like they might be relevant to someone's needs and you're willing to act as a recommendation for me, please reach out.
#I normally wouldn't do this but its an emergency#by the way your company probably has a financial incentive for playing the role of recruiter
5 notes
·
View notes
Text
There was no mandate for Trump. There was no red shift. There was only a blue abandonment
The real mandate is for Democrats to stand for a fairer economy.
ROBERT REICH
NOV 14
Friends,
Trump is saying the election gave him a “very big mandate.”
Rubbish. It wasn’t a mandate at all. It wasn’t even a “red shift” to Trump and the Republicans.
It was a blue abandonment.
We now know that nine million fewer votes were cast nationwide in 2024 than in 2020.
Trump got about a million more votes than he did in 2020 (700,000 of them in the seven battleground states). That’s no big deal.
The bigger news is that Harris got 10 million fewer votes than Biden did in 2020 (400,000 fewer in the battleground states).
Harris campaigned hard in the battlegrounds, so her erosion from Biden’s vote there wasn’t nearly as much, proportionately, as it was everywhere else across the country.
The biggest takeaway is that Biden’s 9 million votes disappeared.
Why?
It couldn’t have been because of virulent racism because we elected a Black man, twice. It couldn’t have been misogyny, since Hillary Clinton got 3 million more votes than Trump in 2016, and Clinton’s actions and statements probably triggered more misogyny in 2016 than did Harris’s in 2024.
There’s no evidence of illegal vote tampering or of voter suppression nearly on this scale. In fact, it was easier to cast a ballot this year than in 2020.
So what happened to the 9 million?
We can’t know for sure but it seems most likely that those 9 million potential voters — mostly working class — said to themselves, “I won’t vote for Trump because he’s an asshole. But I won’t vote for the Democrats either, because they don’t give a damn about me.”
The task for the Democrats is what it should have been all along: remaking the party into the party of the bottom 90 percent — the party of people who don’t live off stocks and bonds, of people who are not CEOs or billionaires like Mark Cuban, the party that rejects Elon Musk and the entire American oligarchy.
Instead, the Democratic Party must be the party of average working people whose wages have gone nowhere and whose jobs are less secure.
Blue-collar private-sector workers earned more on average in 1972, after adjusting for inflation, than they are earning now in 2024. This means today’s blue-collar workers are on average earning less in real dollars than their grandparents earned 52 years ago.
Yet the American economy is far larger than it was 52 years ago. Where did the additional money go? To the top. So what’s the Democrats’ task? To restructure the economy toward more widely shared prosperity.
This isn’t a blue-state versus red-state phenomenon. It’s a class phenomenon.
In Missouri, one of the reddest of the red, voters passed an amendment to raise the minimum wage to $15 an hour by a wide margin, even as they overwhelmingly rejected Harris. It looks like they did the same in Alaska.
In ruby-red Nebraska, roughly 75 percent of voters backed a measure to institute paid sick leave, although they rejected Harris. (Nebraskans also came close to unseating their incumbent senator in favor of Dan Osborn, a union activist who ran as an independent and railed against corporate overlords.)
Americans across the board want a fairer economy. Trump Republicans won’t deliver one. Instead, Trump and his allies are readying more tax cuts for big corporations and the wealthy and regulatory rollbacks. They’re preparing to hand the country over to billionaires.
Democrats! This is your opportunity! Take it!
2 notes
·
View notes
Text

Teenage Hungarian soldier Szeles Erika Kornelia, 1956

If I had to guess, I'd say an 1860 Army Colt Pocket (L) and an 1847 Colt Walker with a Brass


Pair of 20 bore Michelangelo game guns by Luciano Bosis engraved from GS Pedretti

Guns N Roses Axl 001
youtube

I hope we see more rare guns. Heres one of the rarer guns I've come accross. The Pieper Nagant carbine only about 350 total were made

Jack Ruby Before He Shoots Lee Harvey Oswald



STEYR ARMS AUG M1 5.56 NATO 16.4 inches 30rd Semi-Auto Rifle with Muzzle Brake & Extended Rail - OD Green
The Steyr AUG is an Austrian bullpup assault rifle that was introduced in 1978. It is a unique rifle that has a modular design and can be configured for a variety of roles. The Steyr AUG was never widely adopted by any military, and only a small number were produced, making it a rare firearm.

Gun Crazy
When gun-obsessed pacifist Bart Tare (John Dall) witnesses expert shooter Annie Laurie Starr (Peggy Cummins) demonstrate her firearm prowess at a carnival one night, it's love at first sight. Aimless Bart joins the traveling show and begins a romance with Annie, but her dangerously rebellious spirit soon gets them both fired. After eloping, the young lovers embark on an armed robbery spree, managing to elude the authorities until Annie insists on pulling one last job.
Paul Newman stars in this unusual Western as the legendary outlaw Billy the Kid, exploring the character's psychological motivations and complicated relationships with those around him. The film takes a more introspective approach to the traditional gunslinger tale, focusing on the inner turmoil and vulnerability of its protagonist. Its unique perspective and Newman's riveting performance make it a standout among gun-centric films.
2 notes
·
View notes
Text
Entrepreneur creates career pathways with MIT OpenCourseWare
New Post has been published on https://thedigitalinsider.com/entrepreneur-creates-career-pathways-with-mit-opencourseware/
Entrepreneur creates career pathways with MIT OpenCourseWare
When June Odongo interviewed early-career electrical engineer Cynthia Wacheke for a software engineering position at her company, Wacheke lacked knowledge of computer science theory but showed potential in complex problem-solving.
Determined to give Wacheke a shot, Odongo turned to MIT OpenCourseWare to create a six-month “bridging course” modeled after the classes she once took as a computer science student. Part of MIT Open Learning, OpenCourseWare offers free, online, open educational resources from more than 2,500 courses that span the MIT undergraduate and graduate curriculum.
“Wacheke had the potential and interest to do the work that needed to be done, so the way to solve this was for me to literally create a path for her to get that work done,” says Odongo, founder and CEO of Senga Technologies.
Developers, Odongo says, are not easy to find. The OpenCourseWare educational resources provided a way to close that gap. “We put Wacheke through the course last year, and she is so impressive,” Odongo says. “Right now, she is doing our first machine learning models. It’s insane how good of a team member she is. She has done so much in such a short time.”
Making high-quality candidates job-ready
Wacheke, who holds a bachelor’s degree in electrical engineering from the University of Nairobi, started her professional career as a hardware engineer. She discovered a passion for software while working on a dashboard design project, and decided to pivot from hardware to software engineering. That’s when she discovered Senga Technologies, a logistics software and services company in Kenya catering to businesses that ship in Africa.
Odongo founded Senga with the goal of simplifying and easing the supply chain and logistics experience, from the movement of goods to software tools. Senga’s ultimate goal, Odongo says, is to have most of their services driven by software. That means employees — and candidates — need to be able to think through complex problems using computer science theory.
“A lot of people are focused on programming, but we care less about programming and more about problem-solving,” says Odongo, who received a bachelor’s degree in computer science from the University of Massachusetts at Lowell and an MBA from Harvard Business School. “We actually apply the things people learn in computer science programs.”
Wacheke started the bridging course in June 2022 and was given six months to complete the curriculum on the MIT OpenCourseWare website. She took nine courses, including: Introduction to Algorithms; Mathematics for Computer Science; Design and Analysis of Algorithms; Elements of Software Construction; Automata, Computability, and Complexity; Database Systems; Principles of Autonomy and Decision Making; Introduction to Machine Learning; and Networks.
“The bridging course helped me learn how to think through things,” Wacheke says. “It’s one thing to know how to do something, but it’s another to design that thing from scratch and implement it.”
During the bridging course, Wacheke was paired with a software engineer at Senga, who mentored her and answered questions along the way. She learned Ruby on Rails, a server-side web application framework under the MIT License. Wacheke also completed other projects to complement the theory she was learning. She created a new website that included an integration to channel external requests to Slack, a cross-platform team communication tool used by the company’s employees.
Continuous learning for team members
The bridging course concluded with a presentation to Senga employees, during which Wacheke explained how the company could use graph theory for decision-making. “If you want to get from point A to B, there are algorithms you can use to find the shortest path,” Wacheke says. “Since we’re a logistics company, I thought we could use this when we’re deciding which routes our trucks take.”
The presentation, which is the final requirement for the bridging course, is also a professional development opportunity for Senga employees. “This process is helpful for our team members, particularly those who have been out of school for a while,” Odongo says. “The candidates present what they’ve learned in relation to Senga. It’s a way of doing continuous learning for the existing team members.”
After successfully completing the bridging course in November 2022, Wacheke transitioned to a full-time software engineer role. She is currently developing a “machine” that can interpret and categorize hundreds of documents, including delivery notes, cash flows, and receipts.
“The goal is to enable our customers to simply feed those documents into our machine, and then we can more accurately read and convert them to digital formats to drive automation,” Odongo says. “The machine will also enable someone to ask a document a question, such as ‘What did I deliver to retailer X on date Y?’ or ‘What is the total price of the goods delivered?’”
The bridging course, which was initially custom-designed for Wacheke, is now a permanent program at Senga. A second team member completed the course in October 2023 and has joined the software team full time.
“Developers are not easy to find, and you also want high-quality developers,” Odongo says. “At least when we do this, we know that the person has gone through what we need.”
#2022#2023#Africa#Algorithms#Analysis#Analysis of Algorithms#automation#Business#career#Careers#CEO#channel#classes#Classes and programs#communication#complexity#computer#Computer Science#Computer science and technology#construction#continuous#course#courses#dashboard#Database#decision making#Design#developers#development#easy
4 notes
·
View notes