StreamKit?

I’ve been thinking about breaking Stream’s inner workings into a separate package.

It would include; networking, parsing(RSS, JSON Feed, Atom, and HTML), data models, database(?), and any utilities around those items. The database bit is a stretch and should really remain outside of the package. It wouldn’t force a storage mechanism on anyone.

I’d like to do this to keep me honest about my separation of concerns and I just like the modularity of it.

It would, of course, use Swift Package Manager to create the package.

The big question rolling around my brain is this: Do I open source it?

Why not you ask? Well, it’s simple. I’m afraid my code will be dragged through the mud and that would destroy me. I love and appreciate constructive feedback and would absolutely take PR’s.

To get where I’d love to have it means creating the SPM and using it internally for Stream for iOS and Stream for Mac. I’d also like to make sure I’m using all the new async/await strictness put in place with Swift 6.

If I can get that far I’d consider open sourcing it. Maybe. 🤣

The other question is, would anyone use it?

Stream for Mac Update

You’d think since Stream for Mac looks this bad I’d get to work on it, you’d be wrong! 🤣

I really do need to get back to it. I started working on the add feeds modal and realized I needed to fix up some of the code that does that to work better on the Mac. It’s also forcing me to look at adding async/await to the app, which is something I really need to do.

Saturday Morning Coffee

FrapAs I’m getting started it’s a nice crisp 27F outside just before 8AM EST. The sun is out and will be all day. We’ve had a very mild winter this year, with the exception of that polar blast around Christmas, and I don’t expect us to get any snow.🌞

My coffee is in hand, time to get started. Hope you enjoy the links. ☕️

Reuters

A gunman opened fire on Monday night on the main campus of Michigan State University, killing three people and injuring five, before an hours-long manhunt for the suspect ended with his death, apparently from a self-inflicted gunshot, police said.

It’s the guns. I don’t know what else to say. Over and over and over again we see this and do nothing. A truly American thing and not one to be proud of. 😞

Chicago Tribune

Kansas City Chiefs win the Super Bowl for the 2nd time in 4 years, beating the Philadelphia Eagles 38-35 on a FG with 8 seconds left

I’m happy for the Chiefs and their fans. It was a great Super Bowl, a nail biter, not a blowout. Oh, and the Mahomes to Kelce connection is without a doubt the best in football and one of the best ever. If Patrick Mahomes can stay healthy and have a 20-year run he’ll break all kinds of records and win some more rings.

Macworld

Just short of the 10th anniversary of that first Mac Pro misstep, Apple is now late in concluding its processor transition by shipping the first Apple silicon-based Mac Pro. What’s worse, reports from Bloomberg suggest that the company has ditched the next Mac Pro’s highest-end processor, calling the computer’s entire purpose into question.

Given Apple’s new chip architecture with memory and processor built into the chip I have a difficult time defining what a pro machine should or would be. Maybe you have to accept a new definition? Maybe it doesn’t mean a flexible and expandable architecture?

What I’d like to see is Apple give the Professional computing world a way to use their current investment in Mac Pro a way to replace the x86 based Xeon chips with Apple Silicon. Of course Apple would never do such a thing because money. 💸

Linode

CAMBRIDGE, Mass., Feb. 15, 2022 – Akamai Technologies, Inc. (NASDAQ: AKAM), the world’s most trusted solution to power and protect digital experiences, today announced it has entered into a definitive agreement to acquire Linode, one of the easiest-to-use and most trusted infrastructure-as-a-service (IaaS) platform providers.

I follow a number of indie software developers and they tend to use Linode for their service backends. Two that come to mind are Micro.blog, the system I use for publishing my blog, and Overcast, the indie podcast app for iOS. I’m sure there are many more out there I don’t know about. I’ve never done any large scale backend work for my indie endeavors but if I did I’d most likely choose Linode because they’re inexpensive, reliable, and have great customer service.

Hopefully they don’t start hiking prices, laying off people, and becoming a terrible place to host. 🤞🏼

Semafor

Spotify’s podcast push began in earnest in 2016, when Ek invited audio executives including higher ups at Gimlet to the company’s headquarters in Stockholm, Sweden to explain the emerging American podcast market.

Spotify calls their recorded audio podcasting. It’s not. Podcasting is the audio plus a delivery mechanism in the form of RSS. Yes, you can have a podcast as I’ve defined it behind a paywall. They just want to lock you into their app with their advertising and try to upsell you on other things. That’s fine. It’s their business but don’t call them podcasts. Ok, off the soap box. 📦

I was listening to the Pivot Podcast last night and Scott Galloway point out that very few podcasts make a profit. That’s true of what he defines as a podcast. Remember, this started as an open technology built by Dave Winer and Adam Curry. It was used and loved long before businessmen decided they could monetize it. Just like blogging. It’s was and still is a way for us mere mortals to communicate to the outside world, even if we’re not paid a dime to do it.

Oh, and I have a feeling some of the small podcasting shops are doing just fine, but they do things differently and have well loved shows. They’re just not exclusive to Spotify or Apple or whatever Big Co place you get your podcasts. They’re fully open and downloadable using your podcast player of choice because they’re built on top of RSS as the delivery mechanism.

The key phrase to listen for when you hear a podcast advertised is ”Download wherever you get your podcasts.” Then you know it’s a real podcast.

Crooks and Liars

The hearing got incredibly creepy when Arkansas state Sen. Matt McKee asked a trans pharmacist if she had a penis. “Do you have a penis?” he asked the woman, who seemed stunned at the question.

Unbelievable. I wish we could get past this and so many other things. So many people want to control how others behave and how they live their life. Often times based on some form of religion they’ve twisted to support their hate, disdain, or jealously of others.

Let people live their lives. Show them respect and grace as fellow human beings. It’s not our job to tell folks how they should live. That goes for women, brown skinned people, and the LBGTQ+ community. ❤️

Doctorow

After half a decade of sedate, steady growth, Mastodon suddenly surged, from 600,000 daily users to 2.6 million in the space of months.

Some folks are already writing off Mastodon. Silly people. If you’re looking to get a huge following and interacting with movie stars, influencers, government officials, and the rich and famous, don’t expect that from Mastodon. It’s not built for that. It’s built like your everyday neighborhood for us commoners to engage in. It’s real people carrying on real discussions. Sure, there’s gonna be some hate but there are mechanisms in place to take care of that crap. I love it and I’m excited to see it grow. There’s no algorithm to encourage you to follow people or corporate master to satisfy and no need to grow to billions of users because of it.

It’s like blogging. It’s all open and up to us, everyday people, to keep it. ✌🏼

New York Times

Lurking behind the concerns of Ron DeSantis, the governor of Florida, over the content of a proposed high school course in African American studies, is a long and complex series of debates about the role of slavery and race in American classrooms.

Talk about hateful, mean, and unsympathetic to fellow human beings. DeSantis is an authoritarian who wants to mold Florida into his own disgusting image. He doesn’t want you to think for yourself or question authority, no sir. He wants a bunch of dumb drones serving the rich and powerful.

Get out if you can. It’s a terrible state. If you can’t, or don’t want to, I wish you luck and hope you find a way to help change the state. 🍀

Joseph Heck

In the past couple of years, I’ve had the occasion to want to make an XCFramework – a bundle that’s used by Apple platforms to encapsulate binary frameworks or libraries – a couple of times.

I don’t know Joseph personally but I’ve interacted with him on the NetNewsWire Slack and Mastodon and he’s a really kind, thoughtful, selfless man. He’s given me feedback on Stream and Mac programming questions. All that to say he’s one of the good ones.

Anywho, this is a great piece on how he built an XCFramework with a Rust core. Rust has become the new, safe, language for creating highly performant software and being able to use it natively on iOS or Mac and integrate it right into Xcode is wonderful. 🧰

Cory Doctrow

Mobile tech is a duopoly run by two companies – Google and Apple – with a combined market cap of $3.5 trillion. Each company uses a combination of tech, law, contract and market power to force sellers to do commerce via an app, and each one extracts a massive commission on all in-app sales – 15-30%!

Duct Tape, fixer of all things!Web tools continue to improve to the point that native apps may become a thing of the past for many companies. Of course folks like me will continue to do native iOS, and hopefully Mac, apps for as long as we can, but the writing has been on the wall for a long time. Native apps are becoming less and less important with each passing day. Learn HTML, CSS, and JavaScript.

New York Times

Over the past year, we have seen a sweeping and ferocious attack on the rights and dignity of transgender people across the country.

A really great piece by Jamelle Bouie. Please, go read it if you can.

Me on SwiftUI list performance

Yours truly who accidentally started a conversation about SwiftUI List performance. Smooth, fast, stable, code is important to me and most developers. we do strive to make our apps the best they can be. I’m still learning, still trying, to make all my apps better each time I work on one. This conversation may change how I do Stream for Mac.

Tiny Apple Core

Developing in SwiftUI

Duct Tape, fixer of all things! I’ve decided I’m going to work on revamping Arrgly starting tomorrow. It’s going to get a new name, Squish (I think), and the UI is going to be 100% SwiftUI (worst name ever) because I need to learn SwiftUI and Arrgly has always been my playground app.

Once I’ve completed it I’m going to start working on Stream for Mac in SwiftUI and see if I can complete it before the end of 2023. 🤞🏼

Wish me luck. 🍀

Saturday Morning Coffee

It’s Thanksgiving week here in the States so I had a three day week, which is really nice and I’d like to make it a standard moving forward. Show of hands, whose with me!

I need to have a very serious conversation with Kolby. He woke me up at 5AM, not to go outside, nooooo, he just wanted to get up. Goofy pup.

There is a good side to being awake, I’m alive, I get to write, and I get to drink coffee. Cheers. ☕️

Cold Espresso

The Guardian

Sian, I’m seeing a lot of talk about a Martin Scorsese film called Goncharov. But I’ve never heard of a Martin Scorsese film called Goncharov. What’s going on?

This is one of those delightful things that could only happen on the internet. Creative people gonna create.

Maybe Mr. Scorsese should make this film? It would have to be a remake, of course. 😃

John Scalzi

Now, why should we bring back that artisan, hand-crafted Web? Oh, I don’t know. Wouldn’t it be nice to have a site that’s not run by an amoral billionaire chaos engine, or algorithmically designed to keep you doomscrolling in a state of fear and anger, or is essentially spyware for governments and/or corporations?

That’s right, author John Scalzi also has a really great blog and he understands the power of the open web. He’s also very entertaining on Twitter. Here’s hoping his Mastodon account is just as good.

Proton

This new emphasis on advertising also undermines Apple’s claims about privacy with its App Tracking Transparency (ATT) feature and its “Privacy. That’s iPhone” ad campaign. In fact, it appears ATT may have been more about blocking competitors than protecting user privacy. Since Apple introduced ATT, its ad revenue has skyrocketed, leading German regulators to investigate Apple to see if it’s abusing its power.

No matter Apple’s true intentions here it just comes off as a real scumbag move and I’d imagine regulators are ready to pounce.

The Verge

Elon Musk says that Twitter’s check mark program could return on Friday, December 2nd, with a new procedure to verify individual identities in order to resolve impersonation issues. Musk described the new manual authentication process as “painful, but necessary.” Verified checkmarks will also be expanded with additional colors — gold for companies, grey for the government, and the original blue for individual accounts.

Not that it matters but I like this move. I don’t agree with the color coding but I like the idea.

I’d make the people gold, governments blue, and companies gray. As it is having gold for a company makes them seem more important than people. The people make the platform not companies. Oh, and gray for the government feels like a slap in the face to governments.

Flicker Fusion

I think Musk is genuniely surprised he hasn’t been able (so far) to bluster his way through this.

We’re finally starting to see cracks in Musks three ring circus. He’s spending so much time at Twitter blowing it up he’s ignoring Tesla and Space X.

Here’s hoping he hires an adult to run Twitter soon. 🤞🏼

Puck

Harry Potter, boy wizard

I know I wasn’t alone in chuckling when the new Warner Bros. Discovery C.E.O. David Zaslav announced on an earnings call last week that he’d really like to do “something with J.K. on Harry Potter going forward,” noting that his film executives “haven’t done a Harry Potter movie in 15 years.” You don’t say! one rival exec texted, echoing a few calls I got from others on the Warners lot. People are terrible.

You need more than JK Rowling to boost your profits Mr. Zaslav but you know that.

Comic Sands

Horror icon Stephen King became the latest celebrity to mock billionaire Elon Musk following his move to reinstate former Republican President Donald Trump to Twitter.

Stephen King, another author I love, is also extremely entertaining on Twitter and I hope he to makes his way to Mastodon.

I wish he and Mr. Scalzi would consider running their own Mastodon instance and invite authors to join them. That would be amazing.

TechCrunch

Tumblr will add support for ActivityPub, the open, decentralized social networking protocol that’s today powering social networking software like Twitter alternative Mastodon, the Instagram-like Pixelfed, video streaming service PeerTube, and others.

I think this is a brilliant idea. Tumblr is a great little micro blogging platform and this will bring a massively scaled ActivityPub instance to the fold.

When I saw this announcement my gut reaction was ”Yes! I must get a job there to help!” Yeah, seriously, that’s how I felt. Luckily I remembered how much I love WillowTree and came to my senses.

Here’s wishing the Tumblr team all the best! 🧡

Oh, look, we still have pumpkin and pecan pie. Pie and coffee? Don’t mind if I do. 🥧

Tiny Apple Core

Saturday Morning Coffee

What a week! That dude that took over Twitter is driving it in the ground with a gigantor hammer all while we watch from the cheap seats sipping our soda and eating popcorn. What a spectacle.

This week was a busy week at work, promotion time. Lots of meetings. I’m all Zoom’ed out.

Enjoy that morning elixir of life. I certainly am. ☕️

Spicy Mexican Coffee

Wired

Eugen Rochko looks exhausted. The 29-year-old German programmer is the founder of Mastodon, a distributed alternative to Twitter that has exploded in popularity in recent weeks as Elon Musk’s ownership of the platform has rained chaos on its users.

I’ve heard some folks doubt the survivability of Mastodon and doubt hate can be squashed there. In my experience on the platform it’s quite the opposite. If you’re running a server full of racist white nationalists, Nazis, or other hate groups it’s extremely easy for the admin of your server to block federation of that entire server.

I’ve found Mastodon to be so much better for conversation with folks outside my little friend bubble on Twitter.

Brent Simmons

For writers, artists, podcasters, journalists, and people who make things in public, Twitter was the one social networking site we all had to use.

Brent is a long time blogger, Mac programmer, creator and leader of the NetNewsWire team, and all around great guy. If you’re a consumer of RSS point your feed reader to his site. It’s a great read.

Platformer

Musk went on to say that “Twitter will be much more engineering-driven,” and that while design and product “will still be very important,” engineers “will have the greatest sway.” And then Musk presented employees with an ultimatum: click “yes” on a Google form affirming your desire to “be part of the new Twitter,” or leave in exchange for three months’ pay.

I’ve heard from a friend that most of the US Engineering staff left. That’s just wild.

I don’t have a NY Times subscription but I’ll bet this piece by Mr. Roth is quite good.

Daring Fireball

If you had told me three weeks ago that Twitter, as a company, would today be embroiled in turmoil — perhaps outright existential crisis — over a company-wide email from Elon Musk centered around the phrase “extremely hardcore”, v-1 is not the scenario I’d have imagined.

In my career I’ve worked for some hardcore companies, like the old Microsoft, it’s not fun. Don’t do it.

I don’t understand why he continues to ask for snippets of code from his employees. It’s just some random metric he’s using to what what end? What about the devs who made Twitter better by removing code?

CNN

Amazon confirmed on Wednesday that layoffs had begun at the company, two days after multiple outlets the e-commerce giant planned to cut around 10,000 employees this week.

It’s been a rough couple weeks in the tech sector. I’m sorry to see so many folks having to deal with this. Here’s hoping they land on their feet quickly.

Fresnoland

While Central Valley agricultural leaders warn of jobs loss during California’s ongoing drought, some local leaders say it’s time for less water-dependent economic opportunities.

California is in deep trouble so the United States food supply is in deep trouble. You’ll see it at the grocery store.

Becky Hansmeyer

When I tweeted my way into the iOS community so many years ago, I felt the same energy and excitement, if not necessarily the same level of closeness. You all gave me the confidence I needed to keep going with programming when I felt like giving up. We’ve person. Like her I lament the loss of the Twitter we knew but all good things come to an end, right?

America, America

I’m not anywhere close to assuming redemption for Rupert Murdoch or his publication for their role in empowering the dangerous desecration of the last six years, particularly since Fox News showed reluctance in quitting the man by airing nearly all of his sour announcement. (For me, the announcement at Mar-a-Lago had more of the air of a man running from the law than running for the presidency.)

How TFG avoids jail time at this point is beyond me.

The Register

Microsoft Azure CTO Mark Russinovich has had it with C and C++, time-tested programming languages commonly used for native applications that require high performance.

Russinovich is a legendary software engineer. It’s gonna be interesting to see how many new products come out of Microsoft and other companies written in 100% Rust.

The Brookings Institution

In this second edition of our October 2021 report, we review the investigation and its basis. We assess the publicly known facts and relevant law and analyze the extent to which the former president may be held criminally responsible for his conduct in Georgia. We conclude that Trump is at substantial risk of criminal prosecution in Fulton County.

At substantial risk? How is he not already in handcuffs? If any of us “regular” people had done this we’d be thrown in a dungeon.

Jalopnik

Haas’ Kevin Magnussen just scored his first-ever pole position in Formula 1 during the Brazilian Grand Prix. Yes, I intended to write that sentence. It’s not April Fool’s Day. Kevin Magnussen is polesitter for Saturday’s sprint race.

I support Haas. It’s an American F1 team and I’m happy for Kevin Magnussen and Haas. Now, get some podiums! 😂

PZ Meyers

Between the Church Militant and Nick Fuentes, it’s pretty clear what the theocratic Right wants to do: they want to kill you or force you to be as mad as they are.

Nick Fuentes is a piece of work but at least he’s not hiding his White Christian Nationalism behind dog whistles, no sir, he’s just saying it out loud.

Go check out that tweet thread. It’s full of Twitter Employees saying goodbye after the hardcore time limit expired.

It’s a sad day for the social network. How long will it stay up?

Tiny Apple Core

Stream Wish

Brain in a jarI have plenty of work to do on Stream, plenty. I have a list of features a mile long. Some submitted by the fine folks using Stream — thank you! — some right out of my goofy brain. Yes, I wish I could move faster, yes I’d like to do this full time. Yes, yes, yes!

The best I can do is muster is an hour here an hour there. Anywho, I’m putting this idea out here. It’s one I’ve added to the Stream list. It’s absolutely something I want.

Read Later

I use Pocket as my read later app. It plays a crucial role in collecting posts and news for Saturday Morning Coffee. What I’d really love to have is a read later feature in Stream. One of these decades it’ll happen.

Twitter Support

It would be much better if these features were part of Twitter.

First, I’d love to be able to follow Twitter Lists as if it were an RSS feed. This is a very selfish feature because I have a Twitter List called Politics. It has all my favorite news sources and other sources of politics. I made it because Politics can really stress me out, especially around election time. I’d like this so I could follow any list from any Tweeter, including my own. Of course it would be best to be able to do it without going through Twitter’s authentication system, but I supposed I need that so I can use the API.

Second, it love to have an extension to Stream that could unroll a Twitter thread into a nice single post. That’s it. That’s the feature.

Here’s what it would look like. This example used Thread Reader and Pocket. Stream could be great at this if its darned developer would get off his butt and write some code. 🙃

Stream + Twitter

Something I’ve considered adding to Stream is the ability to follow Twitter lists.

The reason I’d like to have it is I have a Twitter list called Politics I’d like to follow.

I thought this could be an interesting, differentiating, feature.

Of course there are many features on my list. So many it’s honestly overwhelming when I think about them all.

Some others include; iCloud syncing, Feedbin, Feedly, Labels, Filtering, and many, many more.

So much time, so few features. Scratch that, reverse them. So many features, so little time.

Stream Update

I feel like I’ve been working on this app forever. 😀

But, I haven’t. It’s been a couple years of fits-and-starts. The last TestFlight build I sent out was, I believe, back in late February.

I only have a few new items to add then it’s all about bug fixes.

What’s left?

Import and Export OPML

I have the core of importing and exporting working fine. It’s what I worked on today.

The one stumbling block I have is where it fits in the UI, like it’s a little thing. I have some ideas, of course, but I’m not thrilled about any of them. I’ll probably pick the least icky idea and do that.

Once that’s done I’d imagine the Export feature will live next to it.

Sharing

This goes two ways. I’d like to add an extension that will allow someone to Add to Stream from a web browser and I’d like to allow folks to share out of the article view. This should allow folks to start a blog post of their own or post to their favorite social media site.

Nice to haves

Extra Icons

I have some beautiful icons to share with everyone and I really hope you all enjoy them as much as I do.

Tip Jar

I’ve struggled with this one a bit. Stream is going to be free. It’s not going to be something folks just gotta have. I did this for me. I wanted an app that was simple and felt more like a Twitter feed. I think it hits both marks.

The reason I’ve struggled with the idea of having a tip jar is I don’t want folks to feel like they have to pay anything for it. I would appreciate it but it’s not necessary.

Wrapping up

I have a few bugs I’m aware of, mostly around stripping of HTML tags.

Thanks for following along.