#php logic
Explore tagged Tumblr posts
Text
PHP if...else Statements
Master PHP if, else, and elseif statements with simple examples and best practices. Learn how to use conditions in PHP to control program flow. ✅ PHP if...else Statements – Complete Beginner’s Guide Conditional statements in PHP allow you to make decisions based on conditions. The most basic and commonly used conditional structure is the if...else statement. This tutorial will walk you through…
#learn php conditions#php conditional statements#php control flow#php decision making#php elseif#php if else#php if else syntax#php if examples#php if nested#php if statement#php if tutorial#php logic#ternary operator in php
0 notes
Text
Toe Dipping Into View Transitions
New Post has been published on https://thedigitalinsider.com/toe-dipping-into-view-transitions/
Toe Dipping Into View Transitions
I’ll be honest and say that the View Transition API intimidates me more than a smidge. There are plenty of tutorials with the most impressive demos showing how we can animate the transition between two pages, and they usually start with the simplest of all examples.
@view-transition navigation: auto;
That’s usually where the simplicity ends and the tutorials venture deep into JavaScript territory. There’s nothing wrong with that, of course, except that it’s a mental leap for someone like me who learns by building up rather than leaping through. So, I was darned inspired when I saw Uncle Dave and Jim Neilsen trading tips on a super practical transition: post titles.
You can see how it works on Jim’s site:
This is the perfect sort of toe-dipping experiment I like for trying new things. And it starts with the same little @view-transition snippet which is used to opt both pages into the View Transitions API: the page we’re on and the page we’re navigating to. From here on out, we can think of those as the “new” page and the “old” page, respectively.
I was able to get the same effect going on my personal blog:
Perfect little exercise for a blog, right? It starts by setting the view-transition-name on the elements we want to participate in the transition which, in this case, is the post title on the “old” page and the post title on the “new” page.
So, if this is our markup:
<h1 class="post-title">Notes</h1> <a class="post-link" href="/link-to-post"></a>
…we can give them the same view-transition-name in CSS:
.post-title view-transition-name: post-title; .post-link view-transition-name: post-title;
Dave is quick to point out that we can make sure we respect users who prefer reduced motion and only apply this if their system preferences allow for motion:
@media not (prefers-reduced-motion: reduce) .post-title view-transition-name: post-title; .post-link view-transition-name: post-title;
If those were the only two elements on the page, then this would work fine. But what we have is a list of post links and all of them have to have their own unique view-transition-name. This is where Jim got a little stuck in his work because how in the heck do you accomplish that when new blog posts are published all the time? Do you have to edit your CSS and come up with a new transition name each and every time you want to post new content? Nah, there’s got to be a better way.
And there is. Or, at least there will be. It’s just not standard yet. Bramus, in fact, wrote about it very recently when discussing Chrome’s work on the attr() function which will be able to generate a series of unique identifiers in a single declaration. Check out this CSS from the future:
<style> .card[id] view-transition-name: attr(id type(<custom-ident>), none); /* card-1, card-2, card-3, … */ view-transition-class: card; </style> <div class="cards"> <div class="card" id="card-1"></div> <div class="card" id="card-2"></div> <div class="card" id="card-3"></div> <div class="card" id="card-4"></div> </div>
Daaaaa-aaaang that is going to be handy! I want it now, darn it! Gotta have to wait not only for Chrome to develop it, but for other browsers to adopt and implement it as well, so who knows when we’ll actually get it. For now, the best bet is to use a little programmatic logic directly in the template. My site runs on WordPress, so I’ve got access to PHP and can generate an inline style that sets the view-transition-name on both elements.
The post title is in the template for my individual blog posts. That’s the single.php file in WordPress parlance.
<?php the_title( '<h1 class="post-single__title" style="view-transition-name: post-' . get_the_id() . '">', '</h1>' ); ?>
The post links are in the template for post archives. That’s typically archive.php in WordPress:
<?php the_title( '<h2 class="post-link><a href="' . esc_url( get_permalink() ) .'" rel="bookmark" style="view-transition-name: post-' . get_the_id() . '">', '</a></h2>' ); ?>
See what’s happening there? The view-transition-name property is set on both transition elements directly inline, using PHP to generate the name based on the post’s assigned ID in WordPress. Another way to do it is to drop a <style> tag in the template and plop the logic in there. Both are equally icky compared to what attr() will be able to do in the future, so pick your poison.
The important thing is that now both elements share the same view-transition-name and that we also have already opted into @view-transition. With those two ingredients in place, the transition works! We don’t even need to define @keyframes (but you totally could) because the default transition does all the heavy lifting.
In the same toe-dipping spirit, I caught the latest issue of Modern Web Weekly and love this little sprinkle of view transition on radio inputs:
Notice the JavaScript that is needed to prevent the radio’s default clicking behavior in order to allow the transition to run before the input is checked.
#API#Articles#Behavior#Blog#Building#chrome#content#course#CSS#Exercise#Features#Future#how#it#JavaScript#Link#links#list#logic#media#motion#navigation#notes#One#Other#PHP#prevent#radio#simplicity#system preferences
1 note
·
View note
Text

Web Designing VS. Web Development: What's the Difference?
Ever wondered how websites work? Well, there are two main parts to it! Let's break it down for you!
1)Focus:
Web Designing: Emphasizes the visual aspect, creating an appealing user interface with layout, colors, and typography.
Web Development: Ensures smooth functionality, enabling seamless user navigation and interactions.
2)Scripting:
Web Designing: Utilizes client-side scripts like JavaScript for interactive elements and user experience enhancement.
Web Development: Involves both client-side and server-side scripting. Client-side manages user interactions, while server-side handles databases and dynamic content generation.
3)Development:
Web Designing: Front-end development deals with user interface and experience.
Web Development: Includes both front-end and back-end. Front-end focuses on user interface, while back-end manages server-side processes and data.
4)Skill set:
Web Designing: Requires creativity and innovation to design visually appealing interfaces.
Web Development: Demands technical and logical skills to manage server operations and ensure functionality.
5)Programming Languages:
Web Designing: Uses HTML, CSS, and JavaScript to structure visual elements.
Web Development: Employs various languages like Python, SQL, Java, C++, Ruby, .NET, and PHP for back-end processes.
6)Tools:
Web Designing: Utilizes tools like Photoshop, Sketch, and Adobe Dreamweaver for interface design.
Web Development: Relies on tools like GitHub for collaboration and Chrome developer tools for debugging.
In a nutshell, Web Designing focus on making websites look fantastic and user-friendly, while Web Development work behind the scenes to ensure everything works like magic! Both are crucial for creating awesome websites!
So, which side do you find more exciting? Web Designing or Web Development? Let us know in the comments!
#webdesigning#webdevelopment#userinterface#userexperience#innovation#imagination#creativity#technical#logical#programming#html#css#javascript#dotnet#php#sql#python#java#github#photoshop#wordpress#dotsnkey#dotsnkeytechnologies
1 note
·
View note
Text
Why Spell Check (and some grammar check) isn't AI
So I've seen in the wake of Nanowrimo some people claim that spell check is AI and thus is like Gen AI, and I saw the claim originator on Twitter, but when I pressed them, they basically tried to say they had a degree in computer science, so when I pressed into them if they knew what they were talking about, they couldn't answer because obviously don't know about AI.
For some background I've done some light programming (If you look at the Korean name generator, that's all me). And I also have relatives that did programming.
Here, I can lay out how spell check works without AI or a fancy algorithm.
The oldest spellchecks didn't use AI or Gen AI, they used what is your basic corresponding tables.
If you use something like google sheets (database), you can do this pretty quickly yourself though with a lot of manpower.
Here is a list of commonly misspelled words.
Add that with another table with how they are commonly misspelled.
Then you need a table with "common typos"
Then you need one more table for "Words the user adds."
The algorithm is basically this: Set up a loop. A loop is a mechanism that has an algorithm (or set of instructions in it) which repeats until a certain instruction is met. This loop with this algorithm will check for words. In this case, anything with letters, usually encompassing ' and - (though some programs ignore dashes).
So[,][ ]it[ ]will[ ]look[ ]at[ ]letters[ ]in[ ]this[ ]sentence[ ]and[ ]figure[ ]out[ ]if[ ]it[ ]is[ ]spelled[ ]correctly.
The first loop in the previous sentence will look at the word "so" by selecting everything it knows to be a letter in English. Tada "S, o" Then correspond that to the dictionary. So shows up in the dictionary listing it has of English words. Thanks Webster. (If you're British, the OED)
The Algorithm concludes the word is spelled correctly. No more work needs to be done on So. The next word is it "i, t" correspond that to the dictionary and so on.
If you have a "bad word" for example "alot" then the work is, word is spelled incorrectly. Next "work to be done" is to find out if this word is in the "commonly misspelled" words list. If yes, then underline the word in red to get it corrected.
AKA run Algorithm to underline word (usually a few lines of code if you're doing it the old way).
Then the algorithm moves on. The function of right click/Cntrl click is saying, OK, this word, "alot" is it commonly misspelled? Here are a list of corrections according to this other table. This is the work that needs to be done: We need a popup table. We need to pull from the database this misspelling, and then we need to pull from this other database and pull corresponding correct spellings based on this. Then you set up an if-then If the user clicks on this word, change highlighted word.
This is your basic spelling algorithm. You do not need gen AI for this or AI.
Grammar works similarly. You need a table, the type of speech it is (n, v, adv, adj) and then to load in "rules" one should use. You do not need AI. You need some basic programming skills. On the table of somewhere between "Hello, world" (1) and "OMG, I created artificial intelligence like Data " (10) My "Korean name generator" is like 2.5? in difficulty (minus all of the language and cultural knowledge). Haha. Still mocking myself. But a Spellcheck is not far from that. it is like 3. You could build one fairly easily with PHP and database access to a dictionary and misspelled words with corrections.
But Google pulled from the Enron Emails.
In this case, you can sorta fuzzy logic it and create bigger algorithms, mostly to sort out the *grammar* and *New words* that were used that aren't already in the database, which basically is another loop, but with an add to database function. (i.e. table). Then you would correspond this with another loop to look at "odd grammar" and flag it.
You can use AI to sort it faster than a basic algorithm, but nope, you do not need AI to correspond it. A basic algorithm would do. You can also use AI for "words that look similar to this one" and "Words commonly used in place of this one"
But overall, You do not need AI for a grammar check. You only need a dictionary, a set of commonly held rules of English and exceptions (maybe some Noam Chomsky, though he's controversial), and then some programming skill to get past the hurdle.
But Grammar check could use AI
AI as it stands is basically a large algorithm to match large datasets to the words you use. But the problem is that the datasets are taken from users who did not volunteer to put in that information.
It is not Data on Enterprise have novel experiences of every day and learning how to function in the human world by processing it through a matrix of quantum computing.
So WHEN grammar check does use AI, the AI is mostly doing the crunching of the corresponding the information into a more neat table option, as I understand it. It is not the same thing as Gen AI or your average spell check and Microsoft algorithm from say 2000.
Those are not equal things. Instead, adding Gen AI to say, Microsoft Word, is more like stealing your words for the machine (which BTW, Microsoft absolutely did and you need to transfer out to Anti-AI programs/Apps.) and corresponding them for Gen AI future use for people who can't write worth a damn, and then "averaging" it out. Elew. Who wants to write to the average? That's anti-Creative.
And just because it uses an Algorithm, doesn't automatically use AI.
Look, I can write a algorithm now:
Loop: If you want to be strong...
Go outside.
Do cardio.
Go lift weights.
Make sure you eat a healthy diet and balanced which includes reducing refined sugars and do not eat bad fats.
That equally is a set of instructions, but that's not automatically AI.
I programmed my calculator to spit out the quadratic formula. And this isn't even officially programming, this is a script. Dudes, if you're going to call that AI, then you need help with learning computer programming.
The threshold for making AI v spellcheck is a lot, lot higher programming than a set of simple tables and a loop that looks for letters and spaces corresponding it to an existing dictionary. If that's you're threshold for AI, then when you type words, you are caught in an algorithm. Ooooooo... OMG, when you pull up a dictionary to spellcheck yourself, that's AI. C'mon. The threshold is a might higher to make AI or "victim of algorithm" as in Twitter.
So anytime someone says, "All Spellcheck uses genAI/AI" Laugh in their faces and say no. 'cause like, I'm a terrible programmer, and even I'm like, Meh, not that hard to set up spell check, give me a solid dictionary database and I'll do ya.
That said, A human will beat AI on grammar anytime and will be able to sort weird spellings faster and A-OK, or not.
146 notes
·
View notes
Text
SysNotes devlog 1
Hiya! We're a web developer by trade and we wanted to build ourselves a web-app to manage our system and to get to know each other better. We thought it would be fun to make a sort of a devlog on this blog to show off the development! The working title of this project is SysNotes (but better ideas are welcome!)
What SysNotes is✅:
A place to store profiles of all of our parts
A tool to figure out who is in front
A way to explore our inner world
A private chat similar to PluralKit
A way to combine info about our system with info about our OCs etc as an all-encompassing "brain-world" management system
A personal and tailor-made tool made for our needs
What SysNotes is not❌:
A fronting tracker (we see no need for it in our system)
A social media where users can interact (but we're open to make it so if people are interested)
A public platform that can be used by others (we don't have much experience actually hosting web-apps, but will consider it if there is enough interest!)
An offline app
So if this sounds interesting to you, you can find the first devlog below the cut (it's a long one!):
(I have used word highlighting and emojis as it helps me read large chunks of text, I hope it's alright with y'all!)
Tech stack & setup (feel free to skip if you don't care!)
The project is set up using:
Database: MySQL 8.4.3
Language: PHP 8.3
Framework: Laravel 10 with Breeze (authentication and user accounts) and Livewire 3 (front end integration)
Styling: Tailwind v4
I tried to set up Laragon to easily run the backend, but I ran into issues so I'm just running "php artisan serve" for now and using Laragon to run the DB. Also I'm compiling styles in real time with "npm run dev". Speaking of the DB, I just migrated the default auth tables for now. I will be making app-related DB tables in the next devlog. The awesome thing about Laravel is its Breeze starter kit, which gives you fully functioning authentication and basic account management out of the box, as well as optional Livewire to integrate server-side processing into HTML in the sexiest way. This means that I could get all the boring stuff out of the way with one terminal command. Win!
Styling and layout (for the UI nerds - you can skip this too!)
I changed the default accent color from purple to orange (personal preference) and used an emoji as a placeholder for the logo. I actually kinda like the emoji AS a logo so I might keep it.
Laravel Breeze came with a basic dashboard page, which I expanded with a few containers for the different sections of the page. I made use of the components that come with Breeze to reuse code for buttons etc throughout the code, and made new components as the need arose. Man, I love clean code 😌
I liked the dotted default Laravel page background, so I added it to the dashboard to create the look of a bullet journal. I like the journal-type visuals for this project as it goes with the theme of a notebook/file. I found the code for it here.
I also added some placeholder menu items for the pages that I would like to have in the app - Profile, (Inner) World, Front Decider, and Chat.
i ran into an issue dynamically building Tailwind classes such as class="bg-{{$activeStatus['color']}}-400" - turns out dynamically-created classes aren't supported, even if they're constructed in the component rather than the blade file. You learn something new every day huh…
Also, coming from Tailwind v3, "ps-*" and "pe-*" were confusing to get used to since my muscle memory is "pl-*" and "pr-*" 😂
Feature 1: Profiles page - proof of concept
This is a page where each alter's profiles will be displayed. You can switch between the profiles by clicking on each person's name. The current profile is highlighted in the list using a pale orange colour.
The logic for the profiles functionality uses a Livewire component called Profiles, which loads profile data and passes it into the blade view to be displayed. It also handles logic such as switching between the profiles and formatting data. Currently, the data is hardcoded into the component using an associative array, but I will be converting it to use the database in the next devlog.
New profile (TBC)
You will be able to create new profiles on the same page (this is yet to be implemented). My vision is that the New Alter form will unfold under the button, and fold back up again once the form has been submitted.
Alter name, pronouns, status
The most interesting component here is the status, which is currently set to a hardcoded list of "active", "dormant", and "unknown". However, I envision this to be a customisable list where I can add new statuses to the list from a settings menu (yet to be implemented).
Alter image
I wanted the folder that contained alter images and other assets to be outside of my Laravel project, in the Pictures folder of my operating system. I wanted to do this so that I can back up the assets folder whenever I back up my Pictures folder lol (not for adding/deleting the files - this all happens through the app to maintain data integrity!). However, I learned that Laravel does not support that and it will not be able to see my files because they are external. I found a workaround by using symbolic links (symlinks) 🔗. Basically, they allow to have one folder of identical contents in more than one place. I ran "mklink /D [external path] [internal path]" to create the symlink between my Pictures folder and Laravel's internal assets folder, so that any files that I add to my Pictures folder automatically copy over to Laravel's folder. I changed a couple lines in filesystems.php to point to the symlinked folder:
And I was also getting a "404 file not found" error - I think the issue was because the port wasn't originally specified. I changed the base app URL to the localhost IP address in .env:
…And after all this messing around, it works!
(My Pictures folder)
(My Laravel storage)
(And here is Alice's photo displayed - dw I DO know Ibuki's actual name)
Alter description and history
The description and history fields support HTML, so I can format these fields however I like, and add custom features like tables and bullet point lists.
This is done by using blade's HTML preservation tags "{!! !!}" as opposed to the plain text tags "{{ }}".
(Here I define Alice's description contents)
(And here I insert them into the template)
Traits, likes, dislikes, front triggers
These are saved as separate lists and rendered as fun badges. These will be used in the Front Decider (anyone has a better name for it?? 🤔) tool to help me identify which alter "I" am as it's a big struggle for us. Front Decider will work similar to FlowCharty.
What next?
There's lots more things I want to do with SysNotes! But I will take it one step at a time - here is the plan for the next devlog:
Setting up database tables for the profile data
Adding the "New Profile" form so I can create alters from within the app
Adding ability to edit each field on the profile
I tried my best to explain my work process in a way that wold somewhat make sense to non-coders - if you have any feedback for the future format of these devlogs, let me know!
~~~~~~~~~~~~~~~~~~
Disclaimers:
I have not used AI in the making of this app and I do NOT support the Vibe Coding mind virus that is currently on the loose. Programming is a form of art, and I will defend manual coding until the day I die.
Any alter data found in the screenshots is dummy data that does not represent our actual system.
I will not be making the code publicly available until it is a bit more fleshed out, this so far is just a trial for a concept I had bouncing around my head over the weekend.
We are SYSCOURSE NEUTRAL! Please don't start fights under this post
#sysnotes devlog#plurality#plural system#did#osdd#programming#whoever is fronting is typing like a millenial i am so sorry#also when i say “i” its because i'm not sure who fronted this entire time!#our syskid came up with the idea but i can't feel them so who knows who actually coded it#this is why we need the front decider tool lol
26 notes
·
View notes
Note
I do computer work but it's not very hard and kind of boring. How do I get to do hard computer work? Do I have to go to grad school?
hi i tend to miss these because of slipshod ublock custom filters im too birdbrained to fix.
i worked for a large american technology company which sold business machines internationally for close to a decade until laid off in successful accounting fraud scheme a few years ago. started as developer, erm, pardon me, i started as
junior developer
which is a role similar to routinely-executed court jester and human meatwave conscript meant to soak up enemy bullets to cause exhaustion of enemy bullet supply and finally guy that comes in big gross truck with a pump and a tank and a big hose used to suck the shit+piss out of portable toilet/malfunctioning sewer etc. this is for when you are 20 years old or so and they hit you with this work to calm your ass down a bit. my case was cloud bullshit on ancient rickety php stack. 5% keystrokes/clicks are php, 95% remainder is jira and other members of the axis of evil. LOT of dick sucking and butt fucking. Going into men's bathroom and making eye contact with cubicle neighbor before entering stall and fearlessly making disgusting noises. microwaving fish lunch thrice daily. you get the idea. meager paycheck but six figures takehome technically
next is staff dev, wait, god damn fucking tumblr, you can't adjust fonts mid-paragraph, and Big Text is just another type of font, in case you wanted Big Specific font. fucking fuck hold on. next step is
staff developer
no effective change besides greatly increased workload (click those motherfucking jira buttons!! suffer coworker's asinine bad-faith code review comments that HE AND HE ALONE must manually accept your responses to, on HIS time, before you are allowed to click the jira buttons that start the human meat sausage factory to get your 20 line maximum change into an RC and then release and then push candidate and then prod push!! pay raise one thousand dollars annually (lol). Emails. Now you deal with project manager too. speculate as to what sorts of grievous head injuries that man must suffer daily to describe his logic. his job is like the guy from office space that brings documents from one desk to another but he randomly reorders the words on the page in-flight. make plausibly-deniable wife fucking jokes about his wife in earshot. you're almost at the top of the suffering function. next is, no fucking cute font this time, senior developer, sounds cool right, lol, lmao, "senior" "developer" is like "tallest" "midgit".
no pay increase no workload increase but now manager emails you about extremely, extremely personal issues he's facing and also makes his most difficult problems from his boss your problems. one week will pass and then they will hit you with the "we're considering you for a team lead position". answer:
NO
answer no as this is the prescribed path, you take that role, you are maxxed out in workload, you are dealing with forty employee's worth of bullshit, another one thousand dollarinos a year raise, employer has solved efficiency problem with your sanity and burnout as variables. you're supposed to quit or kill yourself within seconds of hitting 30 y/o. don't fall for tricks. say "NO" in a creative way such as "i have tabulated some data and made it into excel pie chart quantifying diff. departments work output and am considering sending it to whoever Dave is, the guy that is one or two or three report levels over your boss' head, you know, his boss' boss' boss or whatever. or say "you are harassing me sexually, racistly" that kind of shit. make threat clearly.
was worth mentioning before, throughout all of this make as many friends and as much of a splash for yourself as possible as its time to trade on that goodwill, tell your boss you want an open relationship and you're going to fuck and suck other managers, and then find the good one with the good team of old fucking geriatric guys who could never be fooled into working more than a reasonable amount daily and also can kill people with their minds since they have been sitting on the bleeding edge of computing since 1969. their boss will usually be, suspiciously, one report rank higher than everyone else. e.g. their boss has a whole other boss + his reports under him. usually small team. go to their boss, say, hi, look at me, look at my beautiful plumage and captivating mating dance, please hire me, pleassseee. his team will say no, they will say things like "I don't know about that kiddo", "That guy seems like a candy-ass", they will read your papers and look at you in the eyes and say it is not compelling, the boss will kind of hire you anyway. if he doesn't you're fucked. if he does you're now a
STAFF ENGINEER
for fifteen minutes and then
ADVISORY/SENIOR/SPECIAL ENGINEER
and the suffering is over. no code minimal jira + squad of gremlin zerglings under your boss whom you can rank-pull and delegate bullshit to, they will be mostly suckers, take advantage of this. 80% of keystrokes/clicks will be in production of beautiful wonderful lovely .docx and .xlsx's, what a godsend, only in an emergency are you allowed to fuck with your zergling's code, usually in a cool way with bullshit procedure removed.
i worked on high performance computing shit. "what the fuck do you mean 2PB or so in and out a day on flash memory", "what the fuck do you mean special infiniband intel MPI library on CD-R stored in Craig's filing cabinet???". Meetings with company people: webcams off, responses optional, snideness allowed. Meetings with client: you must have your dress shirt starched and white glove the shit out of those motherfuckers. timezones = skill issue. i don't care where germany is, i don't give a shit, wake up at 3am for a 20m meeting i take on the toilet or while eating a boiled lobster complete with cracker + lobster bib. customers countable on one hand, invoices to customers not countable with 32 bits. no fucking mistakes ever allowed except for like whitepaper drafts, you cannot fuck the pumpkin on this one, your actual job relies on your ability to hit a button and suck down a week's worth of compute and millions of dollars, boiling swimming pool's worth of TDP, one mistake that leads result data to being able to be characterized as flawed and your balls are getting ripped off. Quarterly IRL meetings = normiepilled normiemaxxing. Dress sharp. leave at 5pm on the dot, go to bar with Old Fucker coworkers, drink wrecklessly with them, have a blast, let them give you a tour of a lab you are absolutely 100% not allowed to be inside, buildings that have posted weight limits per sq. ft. exceeding 250lbs, such a blast. every paycheck a FORTUNE every dinner a banquet every meeting an email every keystroke life or death. you get to meet /lib/doug mofos too one of whom i wrote a very poor kind of poem thing about. thats about it. hope this helps
146 notes
·
View notes
Text
Therapy yesterday was really good. L and I continue to talk about my OCD and how it intersects with my trauma. L thinks it makes a LOT of sense for me to be dealing with this, considering that as a child, nothing was predictable. Everything was bad. I was let down by pretty much every adult that crossed paths with me.
L thinks I deal with moral obsessions and compulsions: I will contaminate others either emotionally or physically by being bad. So I have to be good. If I'm bad I have to erase it, confess, repent for it, etc.
We talked about how back when I was in PHP, I had one day where I was feeling especially "bad" and "contaminated," I was struggling quite a bit, and I had to force myself to leave the program because I was worried about contaminating the group. I was also deeply afraid that leaving the program without my clinician's permission was wrong, that I'd get in trouble, so I apologized frantically and compulsively to my clinician the next day, not understanding why I had to "leave" in the first place. She absolutely did not understand where my anxiety was coming from, what to say, or how to best support me. It logically makes no sense. It's okay to have a bad day at program, that's actually what the program is for? But no, my OCD was pulling me into a milling different loops of anxiety and rumination. I had to separate myself from the group. I didn't want to get them "dirty" with my "badness." Ugh.
L mentioned last week that she wants to try to do an exposure with me. It sounds bizarre, but one of my trauma triggers is the color red. My parts that hold trauma memories are all seen so vividly in the headspace as the color red. I see my parts as colors. I honestly only learned their names probably about a year ago, so for the past couple of years, L and I have divided and identified my parts with color. The "bad" traumatized parts appear red. My traumatic memories are red. During flashbacks I "see red." As a result of this, I deeply fear the color red. I won't wear a red t-shirt. I won't own a red object. I am terrified of all red foods.
L wants to bring in a red candy or snack to eat together and challenge my fear, even if I can't do it all at once. If anything happened, I guess somebody would be there. I'm not opposed to it completely and do kind of feel motivated to try the exposure despite the anxiety it gives me just thinking about it.
At one point the conversation somehow transitioned to me saying that I was afraid to lose our relationship, but that I also thought that it was "bad" and "wrong" to feel attached to her, and to feel this way. It makes me gross. But I guess it makes sense. I've been seeing her for a long time now. I see her twice a week. We talk every couple of days. How wouldn't I be attached? Why would I keep going back to therapy if I didn't feel an attachment to the relationship?
L is really good with the attachment stuff. I've never had that before. She makes me feel really normal and likable, even. She says she likes me a lot and that I've taught her a lot throughout these last couple of years. But the attachment doesn't necessarily feel unhealthy. Despite needing skills coaching often, I'm pretty good with boundaries, and she hasn't crossed any of mine. She's a relational therapist and she's really used that approach to work with me, without taking advantage of it. It doesn't feel scary like relationships I've had with "providers" in the past.
We talked about some trauma related things, the flashbacks and nightmares I'm having, how I'm continuing to cope with repressed memories and grief. We talked about parts, and a little about some more normal, lighthearted things.
I left feeling okay. It was a good session. I don't see her again on Monday because she's going to a wedding. When I was leaving I said, "be safe," and she responded with, "I hope so!" which made me uneasy, but I know she's really trying to challenge my OCD, and not give me the reassurance I feel like need. I hope the next week goes okay without having the Monday session. I kind of hate missing Monday's, but I do still have FSG group in the afternoon, which should help.
4 notes
·
View notes
Text
Prevent HTTP Parameter Pollution in Laravel with Secure Coding
Understanding HTTP Parameter Pollution in Laravel
HTTP Parameter Pollution (HPP) is a web security vulnerability that occurs when an attacker manipulates multiple HTTP parameters with the same name to bypass security controls, exploit application logic, or perform malicious actions. Laravel, like many PHP frameworks, processes input parameters in a way that can be exploited if not handled correctly.

In this blog, we’ll explore how HPP works, how it affects Laravel applications, and how to secure your web application with practical examples.
How HTTP Parameter Pollution Works
HPP occurs when an application receives multiple parameters with the same name in an HTTP request. Depending on how the backend processes them, unexpected behavior can occur.
Example of HTTP Request with HPP:
GET /search?category=electronics&category=books HTTP/1.1 Host: example.com
Different frameworks handle duplicate parameters differently:
PHP (Laravel): Takes the last occurrence (category=books) unless explicitly handled as an array.
Express.js (Node.js): Stores multiple values as an array.
ASP.NET: Might take the first occurrence (category=electronics).
If the application isn’t designed to handle duplicate parameters, attackers can manipulate input data, bypass security checks, or exploit business logic flaws.
Impact of HTTP Parameter Pollution on Laravel Apps
HPP vulnerabilities can lead to:
✅ Security Bypasses: Attackers can override security parameters, such as authentication tokens or access controls. ✅ Business Logic Manipulation: Altering shopping cart data, search filters, or API inputs. ✅ WAF Evasion: Some Web Application Firewalls (WAFs) may fail to detect malicious input when parameters are duplicated.
How Laravel Handles HTTP Parameters
Laravel processes query string parameters using the request() helper or Input facade. Consider this example:
use Illuminate\Http\Request; Route::get('/search', function (Request $request) { return $request->input('category'); });
If accessed via:
GET /search?category=electronics&category=books
Laravel would return only the last parameter, category=books, unless explicitly handled as an array.
Exploiting HPP in Laravel (Vulnerable Example)
Imagine a Laravel-based authentication system that verifies user roles via query parameters:
Route::get('/dashboard', function (Request $request) { if ($request->input('role') === 'admin') { return "Welcome, Admin!"; } else { return "Access Denied!"; } });
An attacker could manipulate the request like this:
GET /dashboard?role=user&role=admin
If Laravel processes only the last parameter, the attacker gains admin access.
Mitigating HTTP Parameter Pollution in Laravel
1. Validate Incoming Requests Properly
Laravel provides request validation that can enforce strict input handling:
use Illuminate\Http\Request; use Illuminate\Support\Facades\Validator; Route::get('/dashboard', function (Request $request) { $validator = Validator::make($request->all(), [ 'role' => 'required|string|in:user,admin' ]); if ($validator->fails()) { return "Invalid Role!"; } return $request->input('role') === 'admin' ? "Welcome, Admin!" : "Access Denied!"; });
2. Use Laravel’s Input Array Handling
Explicitly retrieve parameters as an array using:
$categories = request()->input('category', []);
Then process them safely:
Route::get('/search', function (Request $request) { $categories = $request->input('category', []); if (is_array($categories)) { return "Selected categories: " . implode(', ', $categories); } return "Invalid input!"; });
3. Encode Query Parameters Properly
Use Laravel’s built-in security functions such as:
e($request->input('category'));
or
htmlspecialchars($request->input('category'), ENT_QUOTES, 'UTF-8');
4. Use Middleware to Filter Requests
Create middleware to sanitize HTTP parameters:
namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; class SanitizeInputMiddleware { public function handle(Request $request, Closure $next) { $input = $request->all(); foreach ($input as $key => $value) { if (is_array($value)) { $input[$key] = array_unique($value); } } $request->replace($input); return $next($request); } }
Then, register it in Kernel.php:
protected $middleware = [ \App\Http\Middleware\SanitizeInputMiddleware::class, ];
Testing Your Laravel Application for HPP Vulnerabilities
To ensure your Laravel app is protected, scan your website using our free Website Security Scanner.

Screenshot of the free tools webpage where you can access security assessment tools.
You can also check the website vulnerability assessment report generated by our tool to check Website Vulnerability:

An Example of a vulnerability assessment report generated with our free tool, providing insights into possible vulnerabilities.
Conclusion
HTTP Parameter Pollution can be a critical vulnerability if left unchecked in Laravel applications. By implementing proper validation, input handling, middleware sanitation, and secure encoding, you can safeguard your web applications from potential exploits.
🔍 Protect your website now! Use our free tool for a quick website security test and ensure your site is safe from security threats.
For more cybersecurity updates, stay tuned to Pentest Testing Corp. Blog! 🚀
3 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
WEB AND APP DEVELOPMENT #WebDevelopmentUnleashed #AppDevelopmentInsights
Unlock the Power of Web and App Development
In the digital era, having a strong online presence is crucial for success. Whether it's a responsive website or a feature-rich mobile app, these tools help businesses reach wider audiences, improve engagement, and boost growth.
At KSoft Technologies, we specialize in creating websites and applications tailored to your business needs, ensuring innovation and functionality go hand in hand.
What is Web Development?
Web development involves designing and building websites that are visually appealing, user-friendly, and fully functional. It includes:
Frontend Development: Focuses on the design and user experience, using technologies like HTML, CSS, and JavaScript.
Backend Development: Handles server-side logic, databases, and APIs using tools like Node.js, PHP, and Python.
A key focus today is responsive design, which ensures your website works flawlessly on desktops, tablets, and smartphones. We at KSoft Technologies prioritize seamless designs that enhance user engagement.
What is App Development?
App development refers to creating software applications for mobile devices or desktops, enabling businesses to connect with users on the go.
Native Apps: Built for specific platforms like Android or iOS.
Web Apps: Accessible through browsers for cross-platform compatibility.
Hybrid Apps: A combination of both, offering flexibility and cost-efficiency.
The app development process includes planning, designing, coding, testing, and launching. With tools like Flutter, React Native, and Swift, we build apps that deliver exceptional user experiences.
Why Choose KSoft Technologies?
At KSoft Technologies, we turn your ideas into reality with cutting-edge web and app development solutions. Whether you need a professional website, a mobile app, or both, our team is here to ensure your project is efficient, scalable, and aligned with your goals.
Ready to take your business to the next level? Explore our services and get started today at KSoft Technologies! 🚀
#web development#erp development#web and mobile app development company#techinnovation#flutter mobile development#app development#app design
3 notes
·
View notes
Text
PHP if Operators
Learn how to use PHP if operators with examples, syntax, and real-world use cases. Master conditional logic in PHP easily. ✅ Mastering PHP if Operators: A Complete Guide for Beginners PHP is a powerful server-side scripting language widely used in web development. One of the most essential features of PHP is conditional statements, and at the heart of this lies the if operator. In this guide,…
#php beginner tutorial#php conditional statements#PHP if#php if else#php if elseif#php if statement#php logic
0 notes
Text
A quick guide to web development
Web development is building websites and web applications, with front-end (HTML, CSS, JavaScript for UI/UX), back-end (server-side logic using PHP, Python, Node.js), or full-stack development (both included ). ) are combined
Key ingredients:
Planning: Define purpose and audience. Design: Create plans and wireframes. Improvement: Build front end and back end. Testing: Make sure everything works properly. Launch: Launch to the site server. Maintenance: Refresh and maintain regularly.
Equipment and trends:
Front end: Response, Vue.js. Background: Node.js, Django. Hosting: AWS, Netlify. Focus on Responsive Design, PWAs, and AI products.
Start learning through FreeCodeCamp and keep learning to improve your skills!
2 notes
·
View notes
Text

The Comprehensive Guide to Web Development, Data Management, and More
Introduction
Everything today is technology driven in this digital world. There's a lot happening behind the scenes when you use your favorite apps, go to websites, and do other things with all of those zeroes and ones — or binary data. In this blog, I will be explaining what all these terminologies really means and other basics of web development, data management etc. We will be discussing them in the simplest way so that this becomes easy to understand for beginners or people who are even remotely interested about technology. JOIN US
What is Web Development?
Web development refers to the work and process of developing a website or web application that can run in a web browser. From laying out individual web page designs before we ever start coding, to how the layout will be implemented through HTML/CSS. There are two major fields of web development — front-end and back-end.
Front-End Development
Front-end development, also known as client-side development, is the part of web development that deals with what users see and interact with on their screens. It involves using languages like HTML, CSS, and JavaScript to create the visual elements of a website, such as buttons, forms, and images. JOIN US
HTML (HyperText Markup Language):
HTML is the foundation of all website, it helps one to organize their content on web platform. It provides the default style to basic elements such as headings, paragraphs and links.
CSS (Cascading Style Sheets):
styles and formats HTML elements. It makes an attractive and user-friendly look of webpage as it controls the colors, fonts, layout.
JavaScript :
A language for adding interactivity to a website Users interact with items, like clicking a button to send in a form or viewing images within the slideshow. JOIN US
Back-End Development
The difference while front-end development is all about what the user sees, back end involves everything that happens behind. The back-end consists of a server, database and application logic that runs on the web.
Server:
A server is a computer that holds website files and provides them to the user browser when they request it. Server-Side: These are populated by back-end developers who build and maintain servers using languages like Python, PHP or Ruby.
Database:
The place where a website keeps its data, from user details to content and settings The database is maintained with services like MySQL, PostgreSQL, or MongoDB. JOIN US
Application Logic —
the code that links front-end and back-end It takes user input, gets data from the database and returns right informations to front-end area.

Why Proper Data Management is Absolutely Critical
Data management — Besides web development this is the most important a part of our Digital World. What Is Data Management? It includes practices, policies and procedures that are used to collect store secure data in controlled way.
Data Storage –
data after being collected needs to be stored securely such data can be stored in relational databases or cloud storage solutions. The most important aspect here is that the data should never be accessed by an unauthorized source or breached. JOIN US
Data processing:
Right from storing the data, with Big Data you further move on to process it in order to make sense out of hordes of raw information. This includes cleansing the data (removing errors or redundancies), finding patterns among it, and producing ideas that could be useful for decision-making.
Data Security:
Another important part of data management is the security of it. It refers to defending data against unauthorized access, breaches or other potential vulnerabilities. You can do this with some basic security methods, mostly encryption and access controls as well as regular auditing of your systems.
Other Critical Tech Landmarks
There are a lot of disciplines in the tech world that go beyond web development and data management. Here are a few of them:
Cloud Computing
Leading by example, AWS had established cloud computing as the on-demand delivery of IT resources and applications via web services/Internet over a decade considering all layers to make it easy from servers up to top most layer. This will enable organizations to consume technology resources in the form of pay-as-you-go model without having to purchase, own and feed that infrastructure. JOIN US
Cloud Computing Advantages:
Main advantages are cost savings, scalability, flexibility and disaster recovery. Resources can be scaled based on usage, which means companies only pay for what they are using and have the data backed up in case of an emergency.
Examples of Cloud Services:
Few popular cloud services are Amazon Web Services (AWS), Microsoft Azure, and Google Cloud. These provide a plethora of services that helps to Develop and Manage App, Store Data etc.
Cybersecurity
As the world continues to rely more heavily on digital technologies, cybersecurity has never been a bigger issue. Protecting computer systems, networks and data from cyber attacks is called Cyber security.
Phishing attacks, Malware, Ransomware and Data breaches:
This is common cybersecurity threats. These threats can bear substantial ramifications, from financial damages to reputation harm for any corporation.
Cybersecurity Best Practices:
In order to safeguard against cybersecurity threats, it is necessary to follow best-practices including using strong passwords and two-factor authorization, updating software as required, training employees on security risks.
Artificial Intelligence and Machine Learning
Artificial Intelligence (AI) and Machine Learning (ML) represent the fastest-growing fields of creating systems that learn from data, identifying patterns in them. These are applied to several use-cases like self driving cars, personalization in Netflix.
AI vs ML —
AI is the broader concept of machines being able to carry out tasks in a way we would consider “smart”. Machine learning is a type of Artificial Intelligence (AI) that provides computers with the ability to learn without being explicitly programmed. JOIN US
Applications of Artificial Intelligence and Machine Learning: some common applications include Image recognition, Speech to text, Natural language processing, Predictive analytics Robotics.
Web Development meets Data Management etc.
We need so many things like web development, data management and cloud computing plus cybersecurity etc.. but some of them are most important aspects i.e. AI/ML yet more fascinating is where these fields converge or play off each other.
Web Development and Data Management
Web Development and Data Management goes hand in hand. The large number of websites and web-based applications in the world generate enormous amounts of data — from user interactions, to transaction records. Being able to manage this data is key in providing a fantastic user experience and enabling you to make decisions based on the right kind of information.
E.g. E-commerce Website, products data need to be saved on server also customers data should save in a database loosely coupled with orders and payments. This data is necessary for customization of the shopping experience as well as inventory management and fraud prevention.
Cloud Computing and Web Development
The development of the web has been revolutionized by cloud computing which gives developers a way to allocate, deploy and scale applications more or less without service friction. Developers now can host applications and data in cloud services instead of investing for physical servers.
E.g. A start-up company can use cloud services to roll out the web application globally in order for all users worldwide could browse it without waiting due unavailability of geolocation prohibited access.
The Future of Cybersecurity and Data Management
Which makes Cybersecurity a very important part of the Data management. The more data collected and stored by an organization, the greater a target it becomes for cyber threats. It is important to secure this data using robust cybersecurity measures, so that sensitive information remains intact and customer trust does not weaken. JOIN US
Ex: A healthcare provider would have to protect patient data in order to be compliant with regulations such as HIPAA (Health Insurance Portability and Accountability Act) that is also responsible for ensuring a degree of confidentiality between a provider and their patients.
Conclusion
Well, in a nutshell web-developer or Data manager etc are some of the integral parts for digital world.
As a Business Owner, Tech Enthusiast or even if you are just planning to make your Career in tech — it is important that you understand these. With the progress of technology never slowing down, these intersections are perhaps only going to come together more strongly and develop into cornerstones that define how we live in a digital world tomorrow.
With the fundamental knowledge of web development, data management, automation and ML you will manage to catch up with digital movements. Whether you have a site to build, ideas data to manage or simply interested in what’s hot these days, skills and knowledge around the above will stand good for changing tech world. JOIN US
#Technology#Web Development#Front-End Development#Back-End Development#HTML#CSS#JavaScript#Data Management#Data Security#Cloud Computing#AWS (Amazon Web Services)#Cybersecurity#Artificial Intelligence (AI)#Machine Learning (ML)#Digital World#Tech Trends#IT Basics#Beginners Guide#Web Development Basics#Tech Enthusiast#Tech Career#america
4 notes
·
View notes
Text
Full Stack Testing vs. Full Stack Development: What’s the Difference?
In today’s fast-evolving tech world, buzzwords like Full Stack Development and Full Stack Testing have gained immense popularity. Both roles are vital in the software lifecycle, but they serve very different purposes. Whether you’re a beginner exploring your career options or a professional looking to expand your skills, understanding the differences between Full Stack Testing and Full Stack Development is crucial. Let’s dive into what makes these two roles unique!
What Is Full Stack Development?
Full Stack Development refers to the ability to build an entire software application – from the user interface to the backend logic – using a wide range of tools and technologies. A Full Stack Developer is proficient in both front-end (user-facing) and back-end (server-side) development.
Key Responsibilities of a Full Stack Developer:
Front-End Development: Building the user interface using tools like HTML, CSS, JavaScript, React, or Angular.
Back-End Development: Creating server-side logic using languages like Node.js, Python, Java, or PHP.
Database Management: Handling databases such as MySQL, MongoDB, or PostgreSQL.
API Integration: Connecting applications through RESTful or GraphQL APIs.
Version Control: Using tools like Git for collaborative development.
Skills Required for Full Stack Development:
Proficiency in programming languages (JavaScript, Python, Java, etc.)
Knowledge of web frameworks (React, Django, etc.)
Experience with databases and cloud platforms
Understanding of DevOps tools
In short, a Full Stack Developer handles everything from designing the UI to writing server-side code, ensuring the software runs smoothly.
What Is Full Stack Testing?
Full Stack Testing is all about ensuring quality at every stage of the software development lifecycle. A Full Stack Tester is responsible for testing applications across multiple layers – from front-end UI testing to back-end database validation – ensuring a seamless user experience. They blend manual and automation testing skills to detect issues early and prevent software failures.
Key Responsibilities of a Full Stack Tester:
UI Testing: Ensuring the application looks and behaves correctly on the front end.
API Testing: Validating data flow and communication between services.
Database Testing: Verifying data integrity and backend operations.
Performance Testing: Ensuring the application performs well under load using tools like JMeter.
Automation Testing: Automating repetitive tests with tools like Selenium or Cypress.
Security Testing: Identifying vulnerabilities to prevent cyber-attacks.
Skills Required for Full Stack Testing:
Knowledge of testing tools like Selenium, Postman, JMeter, or TOSCA
Proficiency in both manual and automation testing
Understanding of test frameworks like TestNG or Cucumber
Familiarity with Agile and DevOps practices
Basic knowledge of programming for writing test scripts
A Full Stack Tester plays a critical role in identifying bugs early in the development process and ensuring the software functions flawlessly.
Which Career Path Should You Choose?
The choice between Full Stack Development and Full Stack Testing depends on your interests and strengths:
Choose Full Stack Development if you love coding, creating interfaces, and building software solutions from scratch. This role is ideal for those who enjoy developing creative products and working with both front-end and back-end technologies.
Choose Full Stack Testing if you have a keen eye for detail and enjoy problem-solving by finding bugs and ensuring software quality. If you love automation, performance testing, and working with multiple testing tools, Full Stack Testing is the right path.
Why Both Roles Are Essential :
Both Full Stack Developers and Full Stack Testers are integral to software development. While developers focus on creating functional features, testers ensure that everything runs smoothly and meets user expectations. In an Agile or DevOps environment, these roles often overlap, with testers and developers working closely to deliver high-quality software in shorter cycles.
Final Thoughts :
Whether you opt for Full Stack Testing or Full Stack Development, both fields offer exciting opportunities with tremendous growth potential. With software becoming increasingly complex, the demand for skilled developers and testers is higher than ever.
At TestoMeter Pvt. Ltd., we provide comprehensive training in both Full Stack Development and Full Stack Testing to help you build a future-proof career. Whether you want to build software or ensure its quality, we’ve got the perfect course for you.
Ready to take the next step? Explore our Full Stack courses today and start your journey toward a successful IT career!
This blog not only provides a crisp comparison but also encourages potential students to explore both career paths with TestoMeter.
For more Details :
Interested in kick-starting your Software Developer/Software Tester career? Contact us today or Visit our website for course details, success stories, and more!
🌐visit - https://www.testometer.co.in/
2 notes
·
View notes
Text
Which is better full stack development or testing?

Full Stack Development vs Software Testing: Which Career Path is Right for You?
In today’s rapidly evolving IT industry, choosing the right career path can be challenging. Two popular options are Full Stack Development and Software Testing. Both of these fields offer unique opportunities and cater to different skill sets, making it essential to assess which one aligns better with your interests, goals, and long-term career aspirations.
At FirstBit Solutions, we take pride in offering a premium quality of teaching, with expert-led courses designed to provide real-world skills. Our goal is to help you know, no matter which path you choose. Whether you’re interested in development or testing, our 100% unlimited placement call guarantee ensures ample job opportunities. In this answer, we’ll explore both career paths to help you make an informed decision.
Understanding Full Stack Development
What is Full Stack Development?
Full Stack Development involves working on both the front-end (client-side) and back-end (server-side) of web applications. Full stack developers handle everything from designing the user interface (UI) to managing databases and server logic. They are versatile professionals who can oversee a project from start to finish.
Key Skills Required for Full Stack Development
To become a full stack developer, you need a diverse set of skills, including:
Front-End Technologies: HTML, CSS, and JavaScript are the fundamental building blocks of web development. Additionally, proficiency in front-end frameworks like React, Angular, or Vue.js is crucial for creating dynamic and responsive web interfaces.
Back-End Technologies: Understanding back-end programming languages like Node.js, Python, Ruby, Java, or PHP is essential for server-side development. Additionally, knowledge of frameworks like Express.js, Django, or Spring can help streamline development processes.
Databases: Full stack developers must know how to work with both SQL (e.g., MySQL, PostgreSQL) and NoSQL (e.g., MongoDB) databases.
Version Control and Collaboration: Proficiency in tools like Git, GitHub, and agile methodologies is important for working in a collaborative environment.
Job Opportunities in Full Stack Development
Full stack developers are in high demand due to their versatility. Companies often prefer professionals who can handle both front-end and back-end tasks, making them valuable assets in any development team. Full stack developers can work in:
Web Development
Mobile App Development
Enterprise Solutions
Startup Ecosystems
The flexibility to work on multiple layers of development opens doors to various career opportunities. Moreover, the continuous rise of startups and digital transformation initiatives has further fueled the demand for full stack developers.
Benefits of Choosing Full Stack Development
High Demand: The need for full stack developers is constantly increasing across industries, making it a lucrative career choice.
Versatility: You can switch between front-end and back-end tasks, giving you a holistic understanding of how applications work.
Creativity: If you enjoy creating visually appealing interfaces while also solving complex back-end problems, full stack development allows you to engage both creative and logical thinking.
Salary: Full stack developers typically enjoy competitive salaries due to their wide skill set and ability to handle various tasks.
Understanding Software Testing
What is Software Testing?
Software Testing is the process of evaluating and verifying that a software product or application is free of defects, meets specified requirements, and functions as expected. Testers ensure the quality and reliability of software by conducting both manual and automated tests.
Key Skills Required for Software Testing
To succeed in software testing, you need to develop the following skills:
Manual Testing: Knowledge of testing techniques, understanding different testing types (unit, integration, system, UAT, etc.), and the ability to write test cases are fundamental for manual testing.
Automated Testing: Proficiency in tools like Selenium, JUnit, TestNG, or Cucumber is essential for automating repetitive test scenarios and improving efficiency.
Attention to Detail: Testers must have a keen eye for identifying potential issues, bugs, and vulnerabilities in software systems.
Scripting Knowledge: Basic programming skills in languages like Java, Python, or JavaScript are necessary to write and maintain test scripts for automated testing.
Job Opportunities in Software Testing
As the demand for high-quality software increases, so does the need for skilled software testers. Companies are investing heavily in testing to ensure that their products perform optimally in the competitive market. Software testers can work in:
Manual Testing
Automated Testing
Quality Assurance (QA) Engineering
Test Automation Development
With the rise of Agile and DevOps methodologies, the role of testers has become even more critical. Continuous integration and continuous delivery (CI/CD) pipelines rely on automated testing to deliver reliable software faster.
Benefits of Choosing Software Testing
Job Security: With software quality being paramount, skilled testers are in high demand, and the need for testing professionals will only continue to grow.
Quality Assurance: If you have a knack for perfection and enjoy ensuring that software works flawlessly, testing could be a satisfying career.
Automated Testing Growth: The shift toward automation opens up new opportunities for testers to specialize in test automation tools and frameworks, which are essential for faster releases.
Flexibility: Testing provides opportunities to work across different domains and industries, as almost every software product requires thorough testing.
Full Stack Development vs Software Testing: A Comparative Analysis
Let’s break down the major factors that could influence your decision:
Factors
Full Stack Development
Software Testing
Skills
Proficiency in front-end and back-end technologies, databases
Manual and automated testing, attention to detail, scripting
Creativity
High – involves creating and designing both UI and logic
Moderate – focuses on improving software through testing and validation
Job Roles
Web Developer, Full Stack Engineer, Mobile App Developer
QA Engineer, Test Automation Engineer, Software Tester
Career Growth
Opportunities to transition into senior roles like CTO or Solution Architect
Growth towards roles in automation and quality management
Salary
Competitive with wide-ranging opportunities
Competitive, with automation testers in higher demand
Demand
High demand due to increasing digitalization and web-based applications
Consistently high, especially in Agile/DevOps environments
Learning Curve
Steep – requires mastering multiple languages and technologies
Moderate – requires a focus on testing tools, techniques, and automation
Why Choose FirstBit Solutions for Full Stack Development or Software Testing?
At FirstBit Solutions, we provide comprehensive training in both full stack development and software testing. Our experienced faculty ensures that you gain hands-on experience and practical knowledge in the field of your choice. Our 100% unlimited placement call guarantee ensures that you have ample opportunities to land your dream job, no matter which course you pursue. Here’s why FirstBit is your ideal training partner:
Expert Trainers: Learn from industry veterans with years of experience in development and testing.
Real-World Projects: Work on real-world projects that simulate industry scenarios, providing you with the practical experience needed to excel.
Job Assistance: Our robust placement support ensures you have access to job openings with top companies.
Flexible Learning: Choose from online and offline batch options to fit your schedule.
Conclusion: Which Career Path is Right for You?
Ultimately, the choice between full stack development and software testing comes down to your personal interests, skills, and career aspirations. If you’re someone who enjoys building applications from the ground up, full stack development might be the perfect fit for you. On the other hand, if you take satisfaction in ensuring that software is of the highest quality, software testing could be your calling.
At FirstBit Solutions, we provide top-notch training in both fields, allowing you to pursue your passion and build a successful career in the IT industry. With our industry-aligned curriculum, expert guidance, and 100% placement call guarantee, your future is in good hands.
So, what are you waiting for? Choose the course that excites you and start your journey toward a rewarding career today!
#education#programming#tech#technology#training#python#full stack developer#software testing#itservices#java#.net#.net developers#datascience
2 notes
·
View notes
Note
Hey, I hope you are doing well.
I only just found this blog and spent awhile reaching your posts and a lot of them really resonated with me. So thank you for that. In a moment of bravery and sleep deprivation I wanted to send an ask.
I have been in serious ana recovery for a little over a year now, eight months of which I spent hospitalized or in a partial hospitalization facility, and the entire time my primary and pretty much only driving force for recovery has been my job. I am a daycare teacher and it is the first and only job to bring me real genuine joy. It was also the wake up call that I needed to actually try to recover because my restriction was heavily affecting my ability to work (energy levels, strength to pick the kids up, etc) And I care about my ability to take care of the kiddos more than anything. Even when I had to miss months of work to try to recover with professional help it felt worth it because I knew when I came back I could be the teacher they deserve. And for a little while it was true, I had more energy and strength and endurance. I was more mentally present and able to focus, I had more patience and honestly I felt like I was feeling the joy of it more deeply.
The problem I’m facing is that with the severe teacher shortage my daycare is now facing the very real possibility of permanently shutting down. This week alone we lost two teachers and now we don’t know how we are going to last through the summer months. The closer we get to what feels like the inevitable end of my job the harder it is to keep the urges at bay. It feels like my only reason to recovery is slipping through my fingers and I don’t know what to do. I know logically I can get another daycare job but it doesn’t feel that simple. I fear at the rate I have been going with relapse, that this will be the opportunity ana has needed to get me fully under again. I fear that I wasted all those months trying to recovery when I could have just been working with the kids and making the most of the time I have left. If my daycare shuts down I likely will never see any of the students again.
I guess I’m looking for advice on how to find reasoning to recover when it all seems to be slipping away? I know the ‘why’ is supposed to be a personal thing but now it’s leaving and I don’t know what’s left. My ‘coping mechanisms’ are what I spent months of treatment trying to conquer and now I don’t know how to deal with all the upcoming change in my life. I know I learned actual skills and coping mechanisms in treatment but the actual motivation to use them aren’t there. I know I have the knowledge I need to recover but I have no Why anymore if my daycare shuts down.
Even now after being in recovery for so long I only have a stable meal plan during the work week and the weekends it all falls apart. I fear that the habits will only grow if I don’t have work helping stabilize me.
The only other thing I have helping in the mental recovery is that after finishing my last round of PHP I adopted two cats. I hoped that they would help inspire me to stay healing as if I get worse enough to the point of needing hospitalization I don’t know who could take care of my cats. So I have a reason to stay out of the hospital because I love my cats dearly and don’t want to have to give them away, however what about the inbetween. There’s so many unknowns and I don’t know how to effectively cope with it and figure out a safe plan.
Any thoughts or help would be greatly appreciated. Thank you for your time.
Hi, anon :)
I'm not going to lie, as a nanny, this made me tear up a little bit. Last year I went through my worst relapse to date, and the kids were my reason to get through it as well.
First things first, congratulations on being in recovery for a year! That's amazing!!
When I'm struggling to find reasons to stay in recovery, I focus on the absolute necessities. You've already done that (nice job!!). You said that the kids are the main reason, but the daycare may be shutting down soon. Your cats still live with you and depend on you 100%. Is there anything else that you would hate to have to leave/not be able to do if you were to relapse? Like if you were to leave your friends/family/partner? Or say the daycare doesn't close or you find another job, you won't be able to work if you go back to the hospital. Will you need that money you're missing out on? How will your bills be getting paid? etc etc
Whatever it may be, you need to keep that in the forefront of your mind during meal times, and whenever you need it throughout the day. Make it your phone wallpaper if you have to. You can write a list of things that matter most to you in the world (other than your ed) and look at that when you need motivation to keep going. In the app we used at my treatment center, it had a section for us to put pictures for reasons for our recovery. I put pictures of my friends and family, my dog, and my favorite bands because I wanted to be well enough to see them in concert one day. Looking at those when I was struggling was pretty helpful. You could do something similar. :) If you have to eat your meals at home sitting next to your cats as a reminder that they need you, then so be it.
Next, I'd say that you may want to have a chat with your boss if you haven't already. They might be able to tell you if you should start looking for another job or not. In the meantime, you still have kiddos who need you to be on top of your game, even if your daycare doesn't stay open much longer. Which I'm sorry about, by the way. That sounds very difficult. :(
One part of your ask really stood out to me the more I reread it. You fear you wasted all that time trying to recover, when you could've just been working with the kids and making the most of what time the daycare has left.
For starters, any time at all spent trying to recover is not a waste of time, no matter the circumstances. That's a huge thing to do, and you did it. You should be proud of yourself.
Secondly, I want you to think about what that time would have been like if you weren't in recovery. When I was nannying last year while in a relapse, it was very, very difficult. I had no strength to pick up the kids (like you mentioned), I couldn't run around with them, I wasn't eating while they were eating, and my mind was not there, with them, it was on food. I was simply not performing at my best because I was tired and hungry all the time. Would you have been able to enjoy that time with them if you were actively in a relapse? Would you have been able to keep up with them physically? Would you be treasuring that time or thinking about food/your next meal/your body/etc?
When I got out of that relapse, I realized how much more I enjoyed being with them and doing the things they love to do because I was able to focus on them.
Another thing that jumped out at me was your eating schedule. Are you not doing well on the weekends because you're not at work? If so, maybe think about it like this: You need to be nourished every day of the week, not just 5 of them, for those kids. If you're restricting every weekend, that doesn't put you in the best place to start the week on Monday morning. The kids need you to be nourished even when they're not there <3
I know you mentioned this, but I'd tell this to anyone who was facing a problem like yours. I think you need to start looking for other teaching jobs. Even if you're not applying for them, you still might want to look. That could give you a safety net so there's not much time in between jobs for you to relapse. If there aren't a lot of jobs like yours open, I'd check out nannying websites since you love working with kids. There are always so many people looking for nannies, and some of them are looking to hire quickly.
I really hope this was helpful and I'm so sorry you're going through all of this. Hopefully your daycare is able to stay open! <3
If I missed anything or you just want to talk, don't hesitate to send me another ask or a message!
2 notes
·
View notes