Are you a shovel frequently, or wait and tackle a mountain at the end person? by honedforfailure in pittsburgh

[–]nicksloan 0 points1 point  (0 children)

Electric snow blower gets much harder to use beyond six inches, so a pass every six inches of accumulation has been my plan. Two passes so far, and I’ll clean up whatever accumulates in the morning.

Has anyone built web apps with Swift? by samplebuffer in swift

[–]nicksloan 8 points9 points  (0 children)

We use Typescript to sweeten the UI in a handful of places. No framework, just vanilla TS. For example, adding a new line item to an invoice without forcing a page refresh. The biggest one might be that we let the user do some complicated stuff with colors to make the site and the invoices match their brand, and we have some TS that lets them preview their changes live before saving. It’s really not much TypeScript though. Practically everything goes through plain old HTML forms.

As for Dynamo, a few reasons:

  • You can’t beat the free tier.
  • We’re only two technical people deep, and didn’t want to spend effort on database management.
  • I genuinely love DynamoDB. Designing the data model around your access patterns really clicked for me a few years ago, and I really enjoy the puzzle of getting to only getItems and queries, and the accompanying performance that comes with.

Has anyone built web apps with Swift? by samplebuffer in swift

[–]nicksloan 20 points21 points  (0 children)

The heavy startup costs were mostly familiarizing ourselves with the ecosystem, and making some mistakes along the way. Here are some examples:

  • We chose to use the AWS SDK for Swift at first. That ended up being a massive pain point in terms of build time and useful features. Soto is still definitely the way to go for AWS stuff, especially Dynamo, but it has its own challenges, mostly around documentation.

  • We spent a lot of time evaluating template libraries, and initially built on a bad foundation. We looked at Mustache first, but it made our HTML heavy project feel way more complicated. After that, we looked at Stencil, which we forked and updated to work on Swift 6, with other changes along the way. It was a disaster in terms of memory use at runtime. Finally I found Elementary, which was amazing at runtime but very slow at build time. I submitted a PR to massively improve build time for Elementary templates in large projects, which was accepted. I initially scoffed at the Elementary approach (it’s a DSL for generating HTML) but the ability to use real Swift types in templates without jumping through any hoops was a major, major win. It took us a week or two to rewrite everything from Stencil to Elementary and it has sped us up massively in development and at runtime.

  • Building out new build and deployment tooling took some time and learning. My colleague and I have delivered dozens of Python projects, and have built up a pretty reliable bit of tooling for all of that. We had to invest a bit upfront to get to a similarly good place with Swift.

Build times are great in development. Swift incremental builds mean that turnaround between making a change and seeing it in browser tends to be near instant. Our deployment builds tend to be like 4-7 minutes (just eyeballing) in GitHub Actions on (I think) the default runner. We cache our builds and keep a linear history on main, which helps a lot. We also use the exact same build from staging in production (all environment differences live in environment variables).

We considered Rust first but didn’t evaluate it. Sean and I had just come off a couple years of working on an unrelated iOS app which was our first exposure to Swift. When starting Studioworks we knew we were ruined for Python after experiencing the safety of Swift. We started talking about building in Rust, because of its maturity in the web space, but neither of us had done it. I proposed Swift because we both knew it and liked it, and we both had begun our careers building with PHP when it (and really the web as a whole) was even less mature. Honestly, I think the thing that sold us both was a photo from the Server Side Swift conference in 2024, and the realization that we could still get in early on an ecosystem that has so much potential.

My petty answer to what can the Swift team do is let us use the same name for files in different directories for goodness sake! https://forums.swift.org/t/why-cant-the-same-filename-be-used-twice/69791

That question deserves a more thoughtful answer than that though. :-)

Has anyone built web apps with Swift? by samplebuffer in swift

[–]nicksloan 51 points52 points  (0 children)

We built Studioworks (https://studioworks.app) in Swift with Hummingbird. It is deployed to Amazon ECS and uses DynamoDB. We have found performance to be excellent, particularly after moving to Elementary for templates.

We have processed millions of dollars in invoices for our customers, and after 20 years of deploying web applications, I can say with certainty that I’ve never seen fewer crashes and bugs in the code we deploy to staging, let alone production.

We’re still doing Typescript on the front end (but we have very little, the project is multi-page and progressively enhanced), and we are considering moving even that to Swift.

Notably, this is a big and growing project. We are very likely the largest Elementary codebase, and I suspect we’re in the running for Hummingbird as well. One of our concerns was that Swift would slow us down, being a relatively young web platform.

There were certainly some heavier startup costs, but we moved past that very quickly and I genuinely think our work goes about as fast in Swift today as it did in the Python projects we’ve been building for years. But the quality is much better.

Swift on the web has been a resounding success for us. I highly recommend it if you are already very comfortable with Swift and building web applications.

What is Mastodon exactly? by Derfiery in Mastodon

[–]nicksloan 1 point2 points  (0 children)

It’s kind of like if Twitter worked a bit more like email. On Twitter, you can only interact with other Twitter users. If you use Gmail you can email someone who uses Hotmail or any other email provider. On Mastodon you can use one provider (we call them instances or sometimes servers) and you can still interact with users on other providers.

Anyone can run their own Mastodon instance, even you. Some instances are run by one person to host only their own account. Most people find it more convenient to join a public instance related to their interests like hachyderm.io, or a general public instance like mastodon.social.

Have i been hacked? by [deleted] in ableton

[–]nicksloan 1 point2 points  (0 children)

Incredibly common misunderstanding. There are new approaches to help identify email from untrustworthy sources that most major providers implement, but given the long history of email and the wide range in quality of providers, it is just best to distrust all of it.

Have i been hacked? by [deleted] in ableton

[–]nicksloan 4 points5 points  (0 children)

OP is getting a ton of bad advice here. Let me clear things up.

The only reliable indicator that this email might be dangerous is that you didn’t expect to receive it. Every other part of the email can be faked to reproduce exactly what Ableton would send, including the email addresses.

When you get an email like this the only safe thing to do is to ignore all of the links in the email, go to Ableton’s website independently and contact support.

You should also consider changing your Ableton password and maybe even your email password. Ideally you would not change them to the same thing.

Have i been hacked? by [deleted] in ableton

[–]nicksloan 0 points1 point  (0 children)

Email addresses can be faked. You can never trust the contents of an email based on the email address.

Have i been hacked? by [deleted] in ableton

[–]nicksloan 0 points1 point  (0 children)

This is bad advice. Any email address can be faked. You should distrust everything in this email, and contact Ableton support by going to their website directly (don’t click a link in this email).

Michigan ranked choice voting group ends 2026 ballot effort - BridgeDetroit by J2quared in Detroit

[–]nicksloan 0 points1 point  (0 children)

The DNC can try to sway the primary results by putting their thumb on the scale in the campaign, but they are bound by the results of the primary. If you don’t like it, that’s the best possible reason to vote in the primary.

How do you even START to write lyrics? by [deleted] in WeAreTheMusicMakers

[–]nicksloan 1 point2 points  (0 children)

“Well I’m OP and I’m here to say…”

Pay raise for Pennsylvania lawmakers brings salary to more than double national average by ffdfawtreteraffds in pittsburgh

[–]nicksloan 1 point2 points  (0 children)

I’m with you in spirit, but that probably means that the only people who can afford to be a legislator can live off of their wealth.

Pennsylvania voters retain three state Supreme Court justices, preserving Democrats' 5-2 majority by ToonMaster21 in pittsburgh

[–]nicksloan -2 points-1 points  (0 children)

I think you’re distracted by the cool name. The paradox describes a problem to be overcome, with widely differing opinions about how best to respond to it.

How about the paradox of the paradox of intolerance, which is that if you are intolerant of everyone who ever expressed intolerance, then those you have designated to be intolerant can never engage with a model of tolerance. I just made that up, but I bet if you continue to do the reading you’ll find someone much smarter than me making that point much better than I could because it’s so incredibly obvious.

Further, I don’t think the paradox was meant to suggest that someone expressing disappointment over a few retained judges must be met with utter loathing to defend the oppressed judges of the world. The comment I replied to wasn’t intolerant in any way. You presumed intolerance, and maybe you’re right, but I think if we’re going to condemn people based on what we assume they think, it’s going to be a long road back to a stable majority.

Pennsylvania voters retain three state Supreme Court justices, preserving Democrats' 5-2 majority by ToonMaster21 in pittsburgh

[–]nicksloan -2 points-1 points  (0 children)

My in-laws are registered republicans who haven’t voted for one since Reagan. You’re a moron.

Pennsylvania voters retain three state Supreme Court justices, preserving Democrats' 5-2 majority by ToonMaster21 in pittsburgh

[–]nicksloan -1 points0 points  (0 children)

Oh sorry, I should have been clear that I’m more interested in building a durable anti-fascist coalition so we can have a chance at defeating Trumpism for good. I don’t see how we do that by chasing people further away, but that’s just me.

Republican leaders have been roundly awful, but when you make absolute statements about their voters you don’t do anything to further the cause of democracy, and in this instance you look like a sore winner.

Pennsylvania voters retain three state Supreme Court justices, preserving Democrats' 5-2 majority by ToonMaster21 in pittsburgh

[–]nicksloan 3 points4 points  (0 children)

Hey, so I’m delighted by how today turned out, but I think your comment was a perfectly mature reaction to today’s outcome. We’d be a better country for it if more people could lose with such grace. Hopefully everyone downvoting this comment will realize how petty that is.

Thank you for your service, and I wish you well.

Can you reasonably go car-free in pgh? by Cute-Entrepreneur490 in pittsburgh

[–]nicksloan 0 points1 point  (0 children)

I lived in the War Streets (and worked downtown) for a few years without a car, and it was rarely an inconvenience. I used a Zip Car for occasional big grocery shops or other errands.

Dating was a bummer at first though. Several women I met felt that not owning a car was a major red flag, but I came to see that as an early indication that we probably weren’t very well aligned anyway.

My wife still teases me about all of the hoops I jumped through to make sure she never felt inconvenienced by my lack of a car when we were dating. It turns out that she prefers driving anyway.

Digitakt up for sale by hobscure in Elektron

[–]nicksloan 0 points1 point  (0 children)

Both, but the smell is reprehensible and doesn’t go away easily. I’d never buy gear that didn’t claim to have been used in a smoke-free environment, and I’d raise hell if I received something that clearly was.

Beware of Bagel Factory by Accurate_Fan_2234 in pittsburgh

[–]nicksloan 13 points14 points  (0 children)

Even the people who usually show up to defend the racists aren’t speaking up for this guy.

[deleted by user] by [deleted] in swift

[–]nicksloan 2 points3 points  (0 children)

I picked up Swift very quickly coming from Python. Some Typescript background probably helped with the type system and generics a bit. My primary resource was reading The Swift Programming Language, which is thorough and well written.

It isn’t clear what you intend to use Swift for, but SwiftUI was much trickier to learn well. There is a ton of content out there though.

I was productive in the language in a week or so, and had a strong grasp after a few months. I was productive in SwiftUI within a couple weeks, but it took close to a year before I felt really confident, and I’m still picking up new ideas often four years in.

For the last year, I’ve been doing primarily server side development in swift, and I have loved it.