Swift – Apple’s slick and safety-focused (? still not sure I’m bought in on that phrasing) programming language – has become the backbone of Apple’s development. Whether you’re hacking on an indie app or shipping production-grade enterprise software, writing consistent, readable, and idiomatic Swift is non-negotiable. Swift has a robust set of guidelines to follow, and I wrote a thing or three about it’s style of OOP, POP, and FP rolled into one language here, but let’s cut through the noise and hit the key conventions that will level up your Swift code.
Continue reading “Swift Coding Conventions: Writing Maintainable, Readable, and Elegant Code”Tag: coding
Swift: A Multi-Paradigm Powerhouse—OOP, POP, and FP
Swift is a versatile toolkit that lets you solve problems in multiple ways. Whether you’re leveraging the familiar object-oriented principles, diving into Swift’s protocol-oriented magic, or harnessing the power of functional programming, Swift has you covered. In my latest swift dive I’ve put together a break down of these paradigms per Swift usage.
Continue reading “Swift: A Multi-Paradigm Powerhouse—OOP, POP, and FP”Precision in Words, Precision in Code: The Power of Writing in Modern Development
I’ve always found it advantageous to enjoy writing—yes, even documentation writing. It’s one of those foundational skills that doesn’t just make you a better developer; it makes you a better communicator, collaborator, and problem solver. In my experience, being able to articulate ideas, requirements, or solutions in written form isn’t just a nice-to-have, it’s a superpower.
Fast forward to today, and the value of this skill has grown exponentially. Why? Because the world of software development is no longer confined to our IDEs or command lines. With the advent of tools like Claude, ChatGPT, Copilot, TabNine, and Replit Ghostwriter, we’ve entered an era where your ability to write clearly and concisely isn’t just a productivity hack—it’s a core part of how we develop software.
Writing as the Bridge Between Ideas and Implementation
Every time you use ChatGPT to brainstorm API designs, or lean on Copilot to generate boilerplate code, you’re engaging in a collaborative act that requires clear articulation of your goals. Tools like these don’t “read your mind” (at least, not yet, and seem prudent they don’t!). They depend on your ability to communicate requirements effectively—whether that’s describing a function’s purpose, outlining a system’s architecture, or debugging a thorny issue.
Let’s break it down:
- Problem Definition: Writing forces you to clarify what you’re solving. “Write me a REST API that does X” only works when X is well-defined. If you’re vague, the AI’s output will be vague too.
- Code Refinement: With tools like Copilot, you can guide its suggestions by writing meaningful comments or even inline documentation. The better you describe your intention, the more useful its suggestions.
- Collaboration: When sharing prompts, workflows, or generated code with teammates, clear writing makes the difference between helpful and confusing.
This isn’t just about documentation anymore; it’s about precision and intent.
Continue reading “Precision in Words, Precision in Code: The Power of Writing in Modern Development”A Successful Deploy to Vercel + Adding More Auth & Login Features to The Web Interface (Plus an Error!)
In the last few posts I knocked out a slew of initial work. Much of it was just to get things up and running and make sure the database was live, the site was live, and that there was a good connection between the two. I did this by building the first basic login page with a dashboard that just shows that the user is logged in, along with a few pages to display general static content. That can be found in:
- Building “Adron’s Core Platform”: Starting a React App on Vercel
- Getting a Vercel PostgreSQL Database and Basic Authentication Operational
- The Confederacy of Errors Starting With Next Auth; Error, Error, npm ERR!
The tasks I’ll accomplish in the following post:
- I want a horizontal menu across the top that will link to the dashboard, login, and about page.
- I want an account creation page.
- I want to make sure that I set things up for the post-login action to be a redirect to the dashboard page.
Adding a Horizontal Menu
For this menu I’m going to add a div with links, assign it as a flex space (css), and add the pertinent links. The changed ./src/app/components/Navigation.tsx with changes looks like this now.
Continue reading “A Successful Deploy to Vercel + Adding More Auth & Login Features to The Web Interface (Plus an Error!)”The Confederacy of Errors Starting With Next Auth; Error, Error, npm ERR!
In the interim while I was getting to the next stage of this app, I ran into (what was I doing? 🤷🏼♂️) this error.
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: next-auth@4.24.10
npm ERR! Found: react@19.0.0-rc-66855b96-20241106
npm ERR! node_modules/react
npm ERR! react@"19.0.0-rc-66855b96-20241106" from the root project
npm ERR! peer react@"^18.2.0 || 19.0.0-rc-66855b96-20241106" from next@15.0.3
npm ERR! node_modules/next
npm ERR! next@"15.0.3" from the root project
npm ERR! peer next@"^12.2.5 || ^13 || ^14 || ^15" from next-auth@4.24.10
npm ERR! node_modules/next-auth
npm ERR! next-auth@"^4.24.10" from the root project
npm ERR! 2 more (react-dom, styled-jsx)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^17.0.2 || ^18" from next-auth@4.24.10
npm ERR! node_modules/next-auth
npm ERR! next-auth@"^4.24.10" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: react@18.3.1
npm ERR! node_modules/react
npm ERR! peer react@"^17.0.2 || ^18" from next-auth@4.24.10
npm ERR! node_modules/next-auth
npm ERR! next-auth@"^4.24.10" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
As with these dependency issue errors I was getting, which seems to be somewhat common with React these days (or maybe just most of web development!), I went about fixing it with the following steps.
First I removed the existing next-auth installation.
npm uninstall next-auth
Next I installed the beta version of next auth that supports Next.js 15 and React 19 (yes, I RTFMed (i.e. Read The Fucking Manual) a bit and read some other things to finally get to that conclusion).
Continue reading “The Confederacy of Errors Starting With Next Auth; Error, Error, npm ERR!”
You must be logged in to post a comment.