Thoughts on Cocoa - <AUTHOR> https://lists.apple.com/archives/cocoa-dev/2019/Oct/msg00004.html <comment><USER3> This is why unfortunately the Mac is dead to me. I would love to support it, but when OpenGL was deprecated it was just game over for me. A company that forces me to learn a completely different language to access their basic APIs and keeps changing them is just too mush of a hassle. Every hour spent on maintaining a mac port is an hour not serving the 90% of users who aren't on Mac.

You can complain about OpenGL all you want, and praise Metal, but it doesn't matter how much better it is. i cant rewrite all my shaders, and do the API integration. The fact that the richest company cant hire 10 engineers to maintain compatibility, and are pushing all this work on to thousands if small independent developers is just rude.

With apples history, why spend time embracing, their new tech if you cant count on it sticking around. For developers who write small one-off apps for iOS its fine, but for people who make larger long term applications Apple is very developer hostile.

<comment><USER4> Although I'm not a fan of OpenGL's removal, I think it's somewhat misunderstood. OpenGL is an outdated design for modern GPUs. Its featureset and architecture is too high level, leading to more buggy drivers and complicated legacy support. There's two things you can do basically - <USER2> OpenGL around in perpituity, or move the complexity and responsibility of it all to libraries.

Apple has defined their single graphics API to be Metal, kind of but not quite like mainstream Linux where this has become Gallium3D (i.e. all open source drivers implement their OpenGL and Vulkan and sometimes even Direct3D support on top of Gallium3D). I fully expect OpenGL to be dropped from many future Linux drivers too. I'm actually looking forward to the day Linux drivers will go Vulkan only, as hopefully it allows things to get less buggy.

Even when OpenGL gets fully removed from macOS, you can still use OpenGL. You can use Vulkan too. You just need a library for it, like ANGLE or MoltenVK. If that would have been Apple's communication, there'd be a lot less fuzz about this.

By the way, OpenGL still works on macOS 10.15. Deprecated does not mean it's not working.

<comment><USER5> > OpenGL is an outdated design for modern GPUs.

The thing is, in its entire lifetime OpenGL was never meant to be a GPU abstraction layer - that only happened during GeForce2's time (and only for Nvidia). Even SGI's implementation was doing a lot of stuff on the CPU (and SGI even had a pure CPU implementation). OpenGL was always meant to be a high lever immediate graphics API (immediate here meaning as opposed to retained/scene graph APIs like OpenInventor).

> By the way, OpenGL still works on macOS 10.15. Deprecated does not mean it's > not working.

Yeah but as it can clearly be seen, you cannot rely on Apple when it comes to keeping things working.

<comment><USER4> It seems to me then that OpenGL should have been a library instead of a driver all along. Its original intent unfortunately has no bearing on what it has become in the meantime.

> Yeah but as it can clearly be seen, you cannot rely on Apple when it comes > to keeping things working.

Well yeah that's what deprecated means. At the moment, developers have a bit longer to get on with the times though, so that's nice I guess.

<comment><USER6> > should have been a library instead of a driver all along

This would have required there to be a lower-level interface that different vendors could all implement, which was not the case for early graphics hardware. In the decades since graphics hardware has all evolved to look more or less the same to SW (so vulkan became a nice fit), but that wasn't always the case.

</comment></comment></comment></comment></comment><comment><USER7> Carbon UI framework has been deprecated for 12 years. Cocoa has been available since the first Mac OS X version, so ~20 years ago, and it's still be main UI framework on macOS, and it will still be for years.

You can't come now and whine that Apple changes UI frameworks too often.

<comment><USER8> I was recently greeted by Brew message that my Mac OS X is too old and is not supported :) It was simply a warning, the installation (GNU tar) run OK and gtar worked. The OS is El Capitan and it's just turned 4 years.

<comment><USER9> Under 1% of homebrew users are on 10.11 ([https://formulae.brew.sh/analytics/os- version/30d/](https://formulae.brew.sh/analytics/os-version/30d/)), so continuing to test on that OS version would not be a good use of the maintainers' time.

<comment><USER10> Interesting that there are five times as many Brew events from Catalina machines than El Capitan machines, and Catalina isn't even out yet.

<comment><USER11> El Capitan machines are already set up, Catalina machines are being set up?

</comment></comment></comment></comment></comment><comment><USER12> I coded in Objective-C back in the NeXT days, did various (small) Cocoa and iOS apps and still use Macs daily - but work at Microsoft now.

Despite my own personal plights with small desktop utilities I write now and then, I don't think Apple has broken Cocoa _that much_ or that it is untenable for a small company to ship cross-platform desktop apps these days (never mind Electron, I'm talking about toolkits like Qt, Xamarin, etc.). _Especially_ if their core functionality can be cleanly detached from the UI.

I poked around a bit to figure out the detail to which the software does estimations, and it does seem like there is a very complex UI:

[https://www.turtlesoft.com/Images/Goldenseal%201024x768.jpg](https://www.turtlesoft.com/Images/Goldenseal%201024x768.jpg)

...but I keep wondering how much of it could be abstracted away by a cross- platform toolkit, and what kind of separation there is between the estimation/modeling code and the UI itself.

We'll never know without a good overview of the internals, but my guess (based on looking at many internal corporate apps over the years, from the pre-web days) is that this evolved organically over time and built up technical debt by literally following UI abstractions rather that isolating their core code from it.

<comment><USER13> That is a bunch of Buttons, Textfields, Dropdowns and Listviews? How hard can that be in Cocoa?

In their blog post they said they worked for three years on the Mac version ... maybe the company is just one person not having much time or coding experience. Maybe I am underestimating the problem, but in my time they would have just hired a student or the nephew of their neighbor to hack something together useful.

<comment><USER14> They also mention in another post that four different contractors gave up on migrating it, three targeting Cocoa and one Qt. Maybe the codebase is brittle and hard to work with and not really worth the effort.

</comment></comment></comment><comment><USER15> Apple started selling 64 bit machines in 2005 and supported it in the operating system with Leopard: [http://theocacao.com/document.page/343](http://theocacao.com/document.page/343)

There weren't many 32 bit only Intel based Macs.

This complaint says far more about the developer than Apple.

<comment><USER16> The first response sums it up nicely:

> The people I hear complaining about this are those who, like you, didn't > move to Cocoa. Carbon was a _temporary_ transition API*. It was necessary > when Mac OS X shipped in March 2001, but even though it wasn't yet formally > deprecated, it was clear it would be.

\- [https://lists.apple.com/archives/cocoa- dev/2019/Oct/msg00021...](https://lists.apple.com/archives/cocoa- dev/2019/Oct/msg00021.html)

<comment><USER5> > But that's part of what lost them their lead after the '90s

I think that guy lives in a bubble, Microsoft is still by a huge margin the lead in desktop OS market share :-P.

And really the main reason is that they try their hardest to not break people's applications. If Windows suddenly couldn't run the applications people wanted, everyone would migrate to Linux (and some to Mac, but Linux is free so the majority would go for the free stuff).

<comment><USER17> I've seen quite a few legacy Windows app needing to be run as administrator, compatibility mode, or both. Just because you can do something doesn't mean you should. It's glaringly irresponsible that applications should be given read/write access to the C:\Windows folder because that was acceptable in the 90s.

Now when I get an exe that needs to run in compatibility mode I don't even bother with it. I'm not compromising my computer because a developer has abandoned their software.

<comment><USER5> Good for you, but other people want their computers to do work for them with the applications they want to use.

</comment></comment></comment></comment></comment><comment><USER18> > my current windows app STILL WORKS ON VISTA, i don't have to do ANYTHING to > "stay up to date" with Windows, cuz they support backward compatibility, and > don't force changes on developers.

> Meanwhile, our Windows version hasn't needed any work since 2000.

Microsoft's impressive backcompat is a blessing as much as it is a curse, and is also the cause of the [subjective opinion incoming] awful User Experience and complete lack of UI and UX consistency, and it remains the number one reason I don't wish to go back to Windows.

<comment><USER19> Win32, WinForms and WPF desktop applications are all able to follow the OS theme. With Metro there's been a departure to a visually incompatible paradigm. This is to say that the lack of UI consistency is a political problem, not a technical side effect of keeping old UI technologies running.

<comment><USER20> I wouldn't be so sure of this.

I made the Windows -> Mac transition in 2008 and recently played around with a modern Windows machine. I was pretty stunned to find the Control Panel experience... not unchanged, but still eerily similar to Windows XP.

Windows' Control Panel is a trainwreck of UX compared to OSX System Preferences. Being such a core part of the OS, I really expected to see, well, something new and better. But then I remembered how countless programs embed themselves in the control panel via DLLs, so Microsoft probably can't make major changes to the UX without breaking binary compatibility with ancient software packages.

<comment><USER21> macOS has third-party preference panes too.

<comment><USER22> Yeah, but they're all separate from any other preference pane. Everybody gets the same framework to create completely independent prefpanes, not hijack Apple's existing ones.

There are no hooks, for example, to modify the Displays prefpane; if Apple decides they want to update it, they're free to do so. On the other hand, a lot of graphics card vendors _still_ needlessly add their own little tab to the display adaptor control panel and the desktop's context menu.

</comment></comment></comment></comment></comment><comment><USER23> I would have much the same _sour grapes_ attitude of many in this thread, except for one point: Apple cannot even keep code examples working. Most of the code samples on Apple's dev site don't even compile a year or two after they are written and Apple doesn't bother keeping them updated. This is a rather large problem and verification of how hard it is to keep up.

<comment><USER24> I'd you're talking about swift yes they changed a lot since the early versions and many code examples are out of date. I believe the language has stabilized now.

<comment><USER23> Most, but the Objective-C examples also have breaks.

<comment><USER21> Only very rarely.

<comment><USER23> Uhm, the OpenPanel changes basically crapped on a whole group. Apple does not keep its examples updated. Heck, now its hard to find examples at all.

<comment><USER25> I still write ObjC more often than most, and I'm pretty familiar with their stuff - I'm generally the first to claim examples are like a needle in a haystack, but they almost always do work when you find them.

They definitely might be outdated, tho.

</comment></comment></comment></comment></comment></comment><comment><USER26> This is entirely by design.

Apple doesn't want you to build an app 20 years ago, make no updates to it and continue to sell it as though nothing has changed in the time since.

Their website is compromised of mostly broken links, the design is dated and it is showing reviews and awards from 10 years ago.

Clear to me that they couldn't be bothered to put any effort in at any point in the buyer's journey so I say good riddance to them.

<comment><USER27> Is this the reason that everything on iOS app store is transitioning to subscriptions where before an app cost $3 and now it costs $3 a month, because developers worked out that the cost of keeping up with Apples constant platform changes is too much?

<comment><USER28> I think that's more that developers want to make a decent living. The vast majority of subscription apps have a server side maintenance cost. As the platform matured and developers realized those users were going to stick to their apps for years without paying another penny, then it becomes untenable.

<comment><USER29> That's simply not true, many offline apps are transitioning to subscriptions and maybe add some lame cloud sync as an excuse/afterthought.

Happened to me recently with an app which is the interactive version of a book. From one day to the other they switched from buying chapters/the book to some stupid subscription.

If they can't make a living they need to charge more and if they can't charge more they need to find a real job/business.

<comment><USER30> The problem is that so many companies burning VC cash and/or ad dollars have trained customers to think software costs less than a cup of coffee. If you charge what you need for a sustainable business up front, your sales will be enormously less and you're going to get tons of negative reviews from people who think a $20 app would need to cure cancer to justify that price. (And, of course, even $3 deserves lifetime free updates and new features)

It's especially bizarre that you're ranting about them needing to find a real business when that is exactly what they're doing by finding a billing model which is viable long-term.

<comment><USER29> Very few developers have proven that they're capable of building a sustainable business (like e.g. OmniGroup).

It's impossible to say if a particular app will in a week:

a) still be available

b) if it will have switched to subscriptions or free + IAP or free with ads and IAP

c) what the IAPs will be and if your old (if any) IAPs will still work.

d) if they'll decide to sell your info to the next available bidder

This is why almost all apps are worthless and why I've essentially stopped purchasing or downloading apps. It's simply not worth the trouble to invest time to learn to use an app and investigate whether you can trust the developer.

</comment></comment></comment></comment></comment></comment><comment><USER31> Well, they'd only have to do one major transition, to Obj-C/Cocoa and for that the writing was on the wall for 20 years (and official for 15 years) and everything would have been much smoother.

Had he used Cocoa, the rest, would have been trivial (to x86, to 64 bit, etc).

Or he could use whatever they like (C++, Pascal, what have you), and have their own UI/compatibility layer between OSes, like Adobe for example does (and several others, big and small: Sublime Text is an one man shop, and they make their own UI just fine).

The first response in the thread is not far off:

The people I hear complaining about this are those who, like you, didn't move to Cocoa. Carbon was a _temporary_ transition API*. It was necessary when Mac OS X shipped in March 2001, but even though it wasn't yet formally deprecated, it was clear it would be. The Carbon UI frameworks were deprecated circa, um, 2006(?). QuickTime has been deprecated nearly as long. 64-bit systems shipped in the mid-2000s, even before the x86 transition, and it was obvious then that 32-bit would eventually go away.

Eighteen years is _forever_ in the tech industry. At the time Cocoa was introduced, the Mac itself hadn't even been around that long!

It sounds like keeping an app limping along on 30-year-old APIs, and then suddenly trying to move it forwards all at once, is a bad idea. By comparison, keeping a Cocoa app up to date isn't that big a deal. I was maintaining Cocoa apps during the 64-bit, x86 and ARC transitions and had to make very few code changes. I've been out of the UI world for about 8 years, and there have definitely been significant changes in areas like view layout and document handling, but adapting to those isn't rocket science.

Yes, Microsoft is rather fanatical about compatibility. But that's part of what lost them their lead after the '90s: the amount of development resources needed to keep everything working exactly the same, and the difficulty of making forward progress without breaking any apps.

—Jens

<comment><USER32> While I agree with you relating to Carbon, Microsoft is pretty much the still only game in town for desktop computing (which also includes laptops and 2-1 hybrids) in worldwide market share.

<comment><USER31> Yes, but macOS has enough native apps for everything, and the advent of web apps and mobile apps, made the whole point moot.

You can do everything and more on a Mac.

<comment><USER32> Go look around anyone doing office work on their phones.

Tablets, sure, when converted into pseudo-laptops, and unless we are talking about iPads here, the European shops are increasingly replacing their Android tablets on sale by Windows 10 laptops with detachable keyboards and touch screen.

As someone that does native/web development, the only area where Web wins are the typical CRUD applications, anything more resource intensive just brings the browser to halt, and for stuff like WebGL it still hit and miss.

As for doing everything and more on a Mac, as much as I like Metal Compute Shaders, they aren't a match to CUDA tooling.

Finally, as much as I like Apple's platforms, they are out of reach for a large segment of the world population, no matter what.

<comment><USER31> > _Go look around anyone doing office work on their phones._

Depends on the office work. A lot of stuff is doable on a phone even, as many common place apps are available, if it wasn't for the ergonomics (small screen, no full keyboard, etc).

> _As someone that does native /web development, the only area where Web wins > are the typical CRUD applications, anything more resource intensive just > brings the browser to halt, and for stuff like WebGL it still hit and miss._

As someone who is a heavy user of the other apps (NLEs, DAWs, drawing/bitmap editing) where the web is a non-starter (and I don't care for all the half- arsed attempts at web-DAWs and such), I agree.

But for business, CRUD apps are 90% of their needs, plus Word/Excel etc, for which Google Docs is a lot of the way there (and even if not, they exist in good shape natively for both Windows and Mac).

> _As for doing everything and more on a Mac, as much as I like Metal Compute > Shaders, they aren 't a match to CUDA tooling._

Perhaps, I don't use CUDA or do 3D at all.

> _Finally, as much as I like Apple 's platforms, they are out of reach for a > large segment of the world population, no matter what._

Sure, but that's also true for workstation-like PCs, and commercial compilers/IDEs, which you're in favor of, no? :-)

<comment><USER32> Workstation like PCs and commercial compilers/IDEs can be had for cheaper prices than Apple hardware.

<comment><USER31> Depends on the "workstation like PCs" and "commercial compilers/IDEs".

Anytime I put together a decent PC with best of breed parts, it goes to 3-4K. And commercial offerings from Dell with similar specs also go there, same for laptops, e.g. Lenovo, and the like.

And I've seen commercial compilers/IDEs priced in the $1K/$2K range, with which you can surely buy a Macbook Air or similar...

<comment><USER32> No need for a Ferrari when a Fiat does the job.

Naturally there are those that feel entitled to get a Ferrari to go down the grocery store, but that is their problem.

If one is buying enterprise class prices, then it is always going to be more expensive with Apple's hardware, because those compilers and IDEs are not part of Apple's offering, adding to the already expensive hardware price.

And if by hardware workstation, you want a really beefy one, the Apple's alternative is only their top hardware.

Thus at the end of the day, when one does the math of what one is getting per buck/dollar/yen/..., still way over the usual budget on PC side.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER33> Come on, there certainly are reasons to complain about Apple deprecating stuff and strongarming developers into their walled garden, such as OpenGL, the fast-move to Swift/Swift versions, SIP/mandatory signed apps, XCode a moving target with OS updates, EFI BIOS updates for eg. booting from afs only downloadable as part of 6GB Mojave and soon Catalina OS updates, deprecation of semi-official Mac OS ports without equivalents on brew, stone-age Unix userland tools (bash, awk from early 2000), Java (and now Python) unbundling, and probably others I'm not aware of since right now I'm not very much into developing on Mac OS and iOS.

But Carbon isn't one of them. I knew Carbon was about to be deprecated in 2005 when I was coding a crappy UI for a crappy OCR solution. Carbon was just a forward-compat GUI lib on Mac OS classic (1998?) for apps to run on Mac OS X (2000).

<comment><USER34> Apple may initially have intended Carbon as temporary, but has changed their stance when they started adding new APIs that never existed in MacOS 9 - HIView/HIWindow was intended to unify Carbon and Cocoa, there was even a 64 buy version of Carbon that shipped in Mac OS betas, and when Retina-Display Hardware shipped, Carbon received new APIs to deal with that.

Likewise, Cocoa in 10.0 was buggy and incomplete. It took until about 10.4, 10.5 for Cocoa to reach feature parity with Carbon and many Cocoa applications were using Carbon for certain features (in facts, last time I checked, Cocoa menus were implemented in Carbon).

<comment><USER25> HIView and HIWindow were added, if I recall correctly, because it allowed other toolkits (tk, Qt (who only recently moved off this), etc) to draw the native look "properly". It was never actually up to date or well documented, and they kept it around just so the OS didn't look so totally bizarre as you moved through it (like you see on Windows).

Bolting on Retina support to that is such a no-brainer that I hesitate to call it adding features - that was table stakes in making sure the switch to retina didn't look like total ass.

None of this stuff ever changed how Carbon was deprecated. People just sat around not listening to Apple, and then the last two years the bigger GUI toolkits finally did the work to transition properly.

<comment><USER34> HIView was up to date and documented, and there were WWDC sessions teaching developers why they should move to HIView and how to do it. Likewise, Apple provided documentation about how to port your Carbon application to 64 bit Carbon. Maxon reportedly even had a 64bit Carbon version of Cinema 4D ready to ship when Apple suddenly announced that they would abandon 64bit Carbon - telling developers to disregard the 64bit Carbon they were still shipping in betas.

<comment><USER25> Yeah, no, this really wasn't the case.

Toolkits that used HIView/HIWindow looked very out of date compared to proper Cocoa implementations (Qt, contrary to popular belief, wasn't really "native" for the longest time since they did this - it's part of why it always looked off).

There are very valid reasons to be frustrated with Apple, but the writing has been on the wall for this stuff for years now. Nobody should be complaining at this point.

</comment></comment></comment></comment></comment><comment><USER35> As an open source developer, I have mixed feelings about this.

Yes, Microsoft seems very keen on keeping Windows compatible even with ancient versions of the OS. New stuff usually is optional and APIs that behaved strangely in Windows 95 still behave the same way in Windows 10.

In Apple land, APIs may change their behavior whenever Apple deems it necessary. I ran into issues because of this with almost every macOS update since 10.8. And I see that even big players like Adobe keep running into compatibility issues all the time.

On the other hand, I'm spending just a few hours per week working on my project [0] and I manage to support an app that now runs on 10.5 through 10.14 and on three different CPU architectures with a single package. So no, I don't think you need to "throw 100 programmers at it" to get a working macOS version.

[0] [https://github.com/enzo1982/freac](https://github.com/enzo1982/freac)

<comment><USER21> Although, it seems like you're reimplementing platform controls? This seems like a mini-Qt: [https://github.com/enzo1982/smooth](https://github.com/enzo1982/smooth)

<comment><USER35> Yes, that's my own custom UI framework. Most of the platform dependent stuff is implemented in the smooth library.

In hindsight, it would have been easier to just use Qt, GTK or wxWidgets. But I learned a lot by doing this myself and wouldn't want to miss that experience.

</comment></comment></comment><comment><USER36> Context: The authors software website: [https://www.TurtleSoft.com](https://www.TurtleSoft.com)

A screenshot: [https://www.turtlesoft.com/Accounting- Software.html#Chart_Of...](https://www.turtlesoft.com/Accounting- Software.html#Chart_Of_Accounts)

I want to be respectful to an indie developer, but think it's worth considering the kind of niche he works in (guessing windows -centric) and probably does more high touch sales.

I want to also guess that many of the people on that thread are from an older generation of developers, might be worth considering what the tradeoffs have been in language improvements that have attracted more people to writing software compared to the authors in that thread saying C++ is all they need.

<comment><USER37> You are being mean. Picking on a guy's website because it's not shiny and new for you.

<comment><USER36> Wasn't trying to be mean, but to understand his perspective when he stated that "For anyone smaller, it's hard to justify the constant need to rewrite code just to stay in the same place. Return on investment is just not there."

His reply post goes a bit more into his story of trying to update the app: [https://lists.apple.com/archives/cocoa- dev/2019/Oct/msg00027...](https://lists.apple.com/archives/cocoa- dev/2019/Oct/msg00027.html) . While I get author's gone through some rough experiences, I wonder he could have sought outside investment/advising to get a solid rewrite done & grow the business.

</comment></comment></comment><comment><USER38> I hear and also feel the pain. I've been doing multi-platform app development since the 90's, and keeping up with Apple is starting to feel like a fools game - the work one has to do, just to stay on the platform and current with the vendor changes to the OS is very frustrating.

Which is why I'm just going to use an engine-only approach from now on. I can, fortunately, eschew native UI's .. since I work on creative tools and my users prefer to have the same pixel-equivalent interface on each platform rather than shifting paradigms.

I think that game engines are the future for all app development. There's not much I can't do in Unreal Engine, for example .. with the benefit that the same app truly runs everywhere.

If Apple want to continue to subvert developer minds to keep them on the platform, fine by me. The engines see this as damage and easily allow a lot of us to route around the problem.

<comment><USER39> Good luck running 20 instances for some productivity apps.

<comment><USER38> Who runs 20 instances of an app? That just sounds like poor design.

Anyway, I have no problems running multiple instances of a small and light UE- based app. Most I've had running on one machine is 5 .. but I'm not seeing the limitation you're indicating.

<comment><USER40> Just open multiple windows in electron and you're there!

<comment><USER38> Electron is just poorly engineered software.

</comment></comment></comment></comment></comment><comment><USER41> The only Cocoa API that has been deprecated in recent years is drawers. Apple is not going to suddenly rewrite their entire desktop apps and utilities in UIKit/Marzipan anytime soon (if ever - hell, they won't even rewrite them in Swift anytime soon), so Cocoa is well established and here to stay for a long time. So unless your app is entirely built out of drawers, I don't see how the mere presence of Marzipan can affect your long term business.

<comment><USER34> QTKit was deprecated, and support for objective-C garbage collection, once praised as the future, was removed altogether.

<comment><USER42> To the best of my knowledge, there wasn't much of a difference in programming style going from GC to ARC except for a few exceptions like all those pesky CFMakeCollectable calls that ended up being no-ops anyway.

<comment><USER34> You have to add all kinds of reference qualifiers (__strong, __weak, ...).

<comment><USER9> You don't have to explicitly mark things as strong as it's the default. Having to manually break references cycles with weak pointers does make the migration not as simple as just changing the compiler flags, but I've never heard of it being all that difficult. Apple managed to migrate Xcode in a single version.

</comment></comment></comment></comment></comment><comment><USER43> Not specifically Cocoa - but audio in Catalina is a city block-sized dumpster fire.

A good set of big audio developers - Steinberg, Ableton, Avid, NI, Presonus - and not a few of the smaller developers have had to send out emails saying "Whatever you do, don't upgrade yet!"

I'm sure there's a shiny happy Cupertino reason for this, but is it _ever_ an annoying waste of time and resources for everyone involved.

<comment><USER44> Worth pointing out that Catalina hasn't been released yet. There's a good chance the problem(s) won't be fixed by then, but it's a little OTT to gripe about beta software.

<comment><AUTHOR> I started using macOS in 2007 and I've learned the hard way it's not a good idea to update to a major version right away. These days I usually wait about a year before installing a new major version. I barely installed Mojave the other day.

<comment><USER45> I do the same with Windows. I upgraded to Vista 1.5 years after it's initial release and never had a complaint about the OS which was much better than XP for me.

<comment><USER46> I skipped Vista completely (except one machine I used to test my software with) and went to Win 7. Same thing with Win 8.

</comment></comment></comment></comment></comment><comment><USER47> This constant iteration is exactly how software development works now.

By contrast to this, Quickbooks for Mac went through a ground-up rewrite in Cocoa about 10 years ago and has been keeping up with the transitions. It's really beautiful software that's a delight to use. They even used an SQLite data format so that you could easily access your own data.

Apple's is best at how it gently breaks stuff to move everyone forward.

<comment><USER46> I can't even fathom what would poor Quickbooks ever do without Apple "gently breaking stuff".

</comment></comment><comment><USER48> It's not like Microsoft is any better. UWP, WPF, WinForms, and GDI are all in various states of disrepair and neglect.

<comment><USER49> I would say that the main difference is that many applications written for Windows 95 will work just fine on a Windows 10 system. The Mac ecosystem has nowhere near the same amount of longevity.

<comment><USER50> And even well written games, like Deus Ex. Not it's successor ironically though.

<comment><USER5> With some tweaks, Deus Ex Invisible War runs fine here on Windows 10. In general i didn't had any game or program i couldn't get it to run in Windows 10 and i have a lot of older software.

</comment></comment></comment></comment><comment><USER51> I'm not familiar with the architecture of the app in question but are the UI parts and business logic/processing parts not properly separated such that a full app rewrite is needed? Someone referred to the backward compatibility of Windows apps as a curse: this is especially true when companies finally decide to update a VB6 or early 2000s WInForms app to something modern, the first step of which is to extricate all of the business logic in click handlers. By the time Cocoa came out the concept of separating your application into logical layers such that things like the UI could be swapped out with newer tech faster were well known so this __shouldn 't __have been such a big deal if the app was constructed correctly.

</comment><comment><USER52> They also have a blog post with more a detailed explanation than the linked mailing list post

[https://turtlesoft.com/wp/](https://turtlesoft.com/wp/)

<comment><USER21> The version numbers are a bit off in that.

</comment></comment><comment><USER53> > Meanwhile, our Windows version hasn't needed any work since 2000.

I see they haven't updated their website since 2000 as well. It's hard to have sympathy for software companies that don't invest in their business.

<comment><USER54> I, for one, rather enjoy the 2000s aesthetic. Different tastes for different folks.

</comment></comment><comment><USER55> The paradigm programmers deal with today is demoralizing: it's lousy to know your work will disintegrate in five or ten years.

For a while Mac OS 10 had support to run Mac OS 9—- via nicely integrated emulation. Then Apple removed it.

I'd just love it if the current OS supported _all_ previous versions, via emulation.

<comment><USER5> Eh, it isn't _that_ bad. Apple is such a case, sure, but other platforms are better. Win32 is probably the king of backwards compatibility - software you wrote or bought 25 years ago will work just fine on modern Windows 10 (assuming you didn't do _too_ many mistakes :-P). But Linux in general should have decent backwards compatibility too, at least for stuff not relying on Gtk and Qt (or C++ if you go far back). Some time ago i compiled some examples from a GUI toolkit i was working on on a RedHat from 1998 and they worked on Debian from 2018 just fine.

In source code form you may even surpass Win32 as code written for X11/Xlib and Motif (to some extent since that wasn't 100% compatible between different Unices) will still compile with little to no modifications.

And of course anything you write to run in a web browser has good chances to work in the future (client side only). Well, assuming Google doesn't completely take over and decide that they know better than anyone else if it is a good idea to remove stuff or not.

Also while not exactly OSes, but several platforms exists that provide isolation from the underlying OS madness. E.g. Java/JVM is an example of a platform that almost never breaks stuff. Languages like Smalltalk and Common Lisp also tend to be very stable. Free Pascal and Lazarus developers also try hard to avoid breaking code (there is still breakage but it is very rare and in almost all cases is about bugs in the compiler - personally i had only a couple of cases where i had to fix code over the last 15 years and that took me only a few minutes).

<comment><USER55> Great point. I made some assumptions without taking a mental inventory. The issue is disproportionately an Apple issue (and even then, an issue with programs that rely on Apple APIs).

</comment></comment></comment><comment> m-p-3 The operating system is a foundation all developers needs to upon, and you want this foundation to be solid in many ways.

Being secure and offering the latest technologies available to the developers is one aspect, but being stable (in terms of ending support) and supporting those previous technologies for a long amount of time is another. I feel like Apple isn't doing the later.

</comment><comment><USER56> Apple's app stores are stuffed with quality apps. They don't need to give developers a quality experience because the supply is there anyway. So they don't. Small development shops have similar negotiating power and position to struggling unsigned music bands.

</comment><comment><USER57> For me the last straw was notarization. I am not going to beg for permission to release software for Apple's platform. Considering the dire state of the Mac software scene Apple should be the ones on their hands and knees begging developers, the arrogance is incredible.

<comment><USER22> > the arrogance is incredible

Every time I see a developer completely fail to understand what notarisation is and how it works then proceed to say that their faulty understanding was the last straw and that they'll stop developing for macOS, I can't say I feel anything but delight. If basic reading comprehension is beyond so many developers, I can't imagine wanting their code on my machine, even in a sandbox.

The arrogance is incredible, indeed.

<comment><USER58> Please don't be a jerk on HN, even if another comment was provocative.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

</comment></comment></comment><comment><USER59> Not sure if they're complaining about runtime compatibility on macos but does anyone know if I wrote a Cocoa app few years ago on Snow Leopard or whatever would it still run as-is on macos version of today?

If not, then I can sympathize with their complaint that keeping up with macos updates will be more effort than Windows. The one time carbon to Cocoa update will be worth doing if my Cocoa app is not broken by next 10 os updates requiring constant code updates.

<comment><USER57> Forget snow leopard, Apple can't even keep compatibility for the version they released 1 year ago.

When Apple announces a new OS update at WWDC you have approximately 4 months to install a beta on an external drive and fix any incompatibilities. Oh and it's a moving target, they only freeze it just before release. This process repeats every single year, sometimes they are so excited to break shit that they do it in a patch release but that's much rarer.

If there's a silver lining it's that Apple has gotten so bored with the Mac that they don't change as much as they used to, it's certainly not as bad as it used to be, but not because Apple has suddenly started caring about backwards compatibility.

</comment></comment><comment><USER60> When you consider investing into user facing software trough specialized API's and tools, it's safe assume only 5-10 year useful life. The consequence is that investing into user facing apps and developers has limits because ROI is limited by current and near future user base.

Separating all the program functionality from all the OS/UI stuff pays off over longer term.

</comment><comment><USER61> Apple makes my preferred platforms, but macOS and iOS have poor backward compatibility, and this is particularly bad for games.

Yearly ABI changes and removals impose a recurring maintenance burden on developers to revise their apps just to keep them working. I think it's one of the factors driving the move to subscription pricing.

</comment><comment><USER62> I wish they would just open source Cocoa (AppKit) if they're going to just abandon it. There were some really good ideas in there, and I think it could possibly develop an active community to continue experimenting with them.

IMO the problem this time around isn't the pivot, but the absolute half- heartedness of the pivot: two half-finished solutions: Swift UI and Catalyst, neither of which works very well yet, and this after about 5 years of pitiful development on Cocoa proper while simultaneously asking people to kind of switch to Swift. So it really feels like 3 half pivots in those 5 years, all to end up with something less polished than Cocoa in its heyday.

I really respect anyone who put up with working on Cocoa apps the last 5 years. The documentation has been sparse to non-existent on new features (often times for a year or longer your best bet was to wade through a WWDC video to get any information at all), coupled with a really miserable Mac App Store experience that was forced on you. It's really sad that when you would find some bug in Cocoa, unlike in the past, you could basically determine that this was it, as everything feels end of the line and thus not likely to be fixed.

</comment><comment><USER63> I'm looking at doing desktop apps for my latest project. It's not simple.

It used to be simpler, although fragmented. There wasn't one tech for all targets, but there was at least one tech for each platform that did a good job.

How come writing a desktop application is harder now than it was 20 years ago?

<comment><USER14> > there was at least one tech for each platform that did a good job

I think the problem is exactly the opposite: there used to be "at most one tech for each platform", but now there's too many choices. On top of that there's also Electron and many multi-platform widget libraries. This gives a lot of "analysis paralysis" to developers. There just isn't a silver bullet.

...I mean, except for MacOS, ironically, where only Cocoa matters (at least until Marzipan). Carbon has been a second-citizen from the start, and was deprecated in 2007.

On Windows there's UWP, WPF and WinForms, which are very productive, and are open source now, on top of that. The only problem IMO is that they're only "great" if you use C#. Writing windows apps with C++ is way too verbose.

On Linux it's more complicated (and I'm not familiar with it) but at least users are much more forgiving when it comes to desktop consistency.

<comment><USER15> To be fair C# is probably the best choice for the majority of desktop developers.

</comment></comment></comment><comment><USER64> > For anyone smaller, it's hard to justify the constant need to rewrite code > just to stay in the same place.

This sort of says it all about modern progress, or indeed modern capitalism - you need to run all the time just to stay in place. This is also known as the Red Queen's Race [0].

[0] [https://en.wikipedia.org/wiki/Red_Queen%27s_race](https://en.wikipedia.org/wiki/Red_Queen%27s_race)

</comment><comment><USER65> I guess they don't have the resource to update their homepage last 20 years how they can update the app?

Their website still shows how long does it take to download files on the Dial- Up connection.

</comment><comment><USER66> Seems like they call themselves "Turtlesoft" for a reason.

</comment><comment><USER67> "Meanwhile, our Windows version hasn't needed any work since 2000"

I honestly don't see that as a good thing. What are these people doing if they haven't touched their code in almost 2 decades?

</comment><comment><USER10> _Meanwhile, our Windows version hasn 't needed any work since 2000_

While I don't disagree that it's hard to keep up with Apple, if you haven't updated your Windows product in 19 years, then it's probably not a product I would want to use anyway.

Imagine if web developers thought the same way. Very few web sites exist today as they did in the year 2000, and those that do are ultra niche, or abandoned.

<comment><USER68> I disagree completely. If software genuinely hasn't needed to be updated since 2000, it's solid, dependable. It's a hammer. I use the same hammer I use today I used 20 years ago.

It's a tool, not a gimmick. Think the UNIX tools used billions of times a day we don't even think about.

<comment><USER11> Hammers don't have security issues, which is where the analogy breaks down. Sometimes, these UNIX tools haven't changed much on the outside, but they are getting updates.

If you look closer though, the BSD and GNU variants of common tools have diverged. And while I like BSD's conservative approach, some of the GNU features are damn useful.

</comment></comment></comment><comment><USER40> Does anyone know if the current macOS still uses elements of Carbon under the hood? What about Catalina?

</comment><comment><USER69> For me it just redirects to apple.com

<comment><USER70> Its a thread that starts with this:

Subject: Thoughts on Cocoa

From: Turtle Creek Software via Cocoa-dev <email@hidden>

Date: Wed, 2 Oct 2019 13:14:44 -0400

Sadly, we just decided to abandon the Cocoa update for our app. It's not easy to walk away from 3 years of work, but better 3 years lost than 5. Time will be better spent on our Windows version.

TurtleSoft started Mac-only with Excel templates in 1987. The first prototype of our current stand-alone accounting app was in the early 90s. Since then, programming for Mac has gone through four primary programming languages (Pascal, C++, Objective C, Swift). Three, soon to be four chip architectures (680x0, PPC, Intel, ARM). Four frameworks (MacApp or Think Class Library, PowerPlant, Carbon, Cocoa).

Microsoft and Adobe are big enough that they've survived the many pivots. They can just throw 100 programmers at it. Intuit has barely kept up. For anyone smaller, it's hard to justify the constant need to rewrite code just to stay in the same place. Return on investment is just not there. Seems like each new update is more difficult.

Many good apps for Mac have died in one pivot or another. We managed to lurch through most of the changes, but not this one. Thinking ahead to the consequences of Marzipan was the last straw.

Meanwhile, our Windows version hasn't needed any work since 2000. It probably will take less than a year to get it updated to 64-bit and a better interface.

Casey McDermott TurtleSoft.com

</comment></comment><comment><USER71> I wish this post focused on the core issue: they don't make enough money from Mac sales to be willing to replace a framework (Carbon) deprecated by Apple 15 years ago, and are instead terminating Mac support.

I'm surprised they didn't do that sooner, but blaming Apple for ending Carbon support is beside the point of "not enough revenue".

</comment><comment><USER72> They can't update their web [https://www.turtlesoft.com](https://www.turtlesoft.com) and they charge $495 for a non-accounting licence. Seriously, the web looks like it was done around year 2000.

<comment><USER46> Should they? Maybe it is not that pretty but it is functional. Many modern sites on the other hand show big nothing picture that one has to scroll down and hunt for info. And I love that light grey text on white background which is nigh to impossible to read for many not so young eyes.

And since they have pretty specific product I am pretty sure that their customers do not give a flying hoot about how the site looks. They need specific functionality from the product

<comment><USER40> This 100 times. Form over function is apparently more important these days.

</comment></comment></comment><comment><USER73> Qt seems like a good solution to multi-platform requirements.

</comment><comment> c-smile That happens all the time. With any OS.

On Windows, if you have an application that draws stuff using GDI+ (20+ years technology) then you will discover that it is not moving today on high-DPI monitors. GDI+ is pure CPU rendering and the Moore's is over. GPU rendering is the only option these days.

Yes, GDI+ still works. You see it renders something in your applications on Windows 10. But you cannot use the application on your new cool monitor.

Same with CoreGraphics on Mac. CG is GDI+ alike thing by nature - pure CPU rasterizer. Something tells me that it will die pretty soon too.

Good abstraction/isolation layer is definitely needed for the applications that want to survive on the long run.

As an example, Norton Antivirus started using such UI layer (Sciter Engine - [https://sciter.com](https://sciter.com)) 12 years ago. First versions were using GDI rendering backend. Then we added Direct2D GPU accelerated backend. With the same API. Application code and architecture did not change all these 12 years.

Same thing on MacOS. Initially the engine used CoreGraphics. Then OpenGL gfx backend was added. And now we are working on Metal. And Vulkan for these matters.

But API of the engine is the same as it was initially.

TL;DR: Good application architecture is still the thing.

</comment><comment><USER74> I think the future is game engines. You can write once and run everywhere. As soon as there's one with first-class support for Rust (as the world is clearly and rapidly moving to Rust) the rest will be moot.

<comment><AUTHOR> FYI Flutter basically works like a game engine.

</comment></comment><comment><USER75> They probably should've started porting their app to web tech 10-15 years ago rather than ranting about progress in native frameworks.</comment>


1775sec said "January 14, Apple database will be leaked if they keep silent" - <AUTHOR> https://twitter.com/1775Sec/status/422496865406291968 <comment><USER2>
      **The 1775 Sec**
      @1775Sec

      "@cedwardsmedia @ECA_Legion We are not bored at the least.
      Apple's database is very interesting! huh, I wonder if
      these codes work? SWEET"

> "I wonder if these codes work"

...um, yah, I wouldn't give these guys any attention either. They're worse than script kiddies. They're poser script kiddies.

</comment><comment><USER3> Maybe it's just me, but we should not be giving any attention to these guys. Especially what they did in the recent Dropbox incident.</comment>


Ask HN: Which CSS grid system do you prefer? - <AUTHOR>

I've been researching various CSS frameworks and am currently utilizing a customized version of the BlueTrip CSS framework, which itself is a combination of multiple CSS frameworks (Blueprint, 960.gs, Tripoli, and Hartija).  I have also worked with 960.gs, but settled on the 24-column/950px wide/10px gutter grid used by BlueTrip and Blueprint as I feel it offers more layout flexibility.
Lately, I've been noticing an increased interest in the 960.gs grid (12-column, 960px wide, 20px gutter).  However, I found it slightly harder to work with for complex layouts and nested grids.
For those that use CSS frameworks, which grid system do you prefer?
Note: I am aware of the arguments for and against CSS frameworks, but have found CSS grids very useful for improving development speed and consistency. <comment><USER2> YUI (reset-fonts-grids) <http://developer.yahoo.com/yui/grids/>

</comment><comment><USER3> Blueprint. You can clean up all the extraneous "span-x" classes with the semantic_classes property in the generator if you're worried about semantic class naming.

It does trend towards div-itis, but I find that most complex layouts do over the long run anyway.

Looking forward to using CSS3 layouts in about 5-7 years... _sigh_.

<comment><AUTHOR> I've been trying to reduce the number of divs by attaching the span-x classes onto other block level elements like
 whenever possible. But layouts seem to work better with more divs.

<comment><USER3> That can work if you remember to add the right margin onto the block level element as well... by default I believe Blueprint only adds it to divs.

<comment><AUTHOR> I modified the css in the screen.css file to fix this. It seems to work ok until it's time to upgrade.

</comment></comment></comment></comment><comment><USER4> I also use Blueprint, I find it to be easy to pick up, simple to use and makes doing page layout a breeze.

I would also suggest looking into jQuery UI's built in CSS / Theme Roller stuff.

I've worked on projects using blueprint to lay things out and jQueryUI to style widgets and it has worked out really well.

</comment><comment><USER5> 960.gs - but I've only used it on personal sites/projects, not any of my work sites yet.

<comment><USER6> This is my main css, but also I tend to use the YUI reset css.

</comment></comment><comment><USER7> I use Blueprint too. They have a very good support. I integrate with Compass/Haml/Sass and all my frontend coding suddenly becomes like backend coding

</comment><comment><USER8> I use Blueprint because it's easy and simple.</comment>


Pulse App praised by NYT & Jobs,then Booted From App Store (NYT complaint) - <AUTHOR> http://kara.allthingsd.com/20100608/popular-pulse-news-reader-ipad-app-gets-steve-jobs-praise-in-morning-then-booted-from-app-store-hours-later-after-new-york-times-complaint/

<comment><USER2> "The Pulse News Reader app, makes commercial use of the NYTimes.com and Boston.com RSS feeds, in violation of their Terms of Use*."

So according to their lawyers you can view their RSS feed as long as you haven't purchased the viewer?

I think I just broke something in my brain.

<comment><USER3> _So according to their lawyers you can view their RSS feed as long as you haven't purchased the viewer?_

No, you, the consumer, are not making commercial use of the NYTimes.com newsfeed.

The company producing the Pulse reader, however, _is_ making commercial use of the NYT brand and content by featuring it prominently in the advertising material.

So, as mentioned by others, the easiest solution seems to be to remove all NYT references (and other unlicensed brands) and resubmit.

<comment><USER2> I can see an objection to that, but it's pretty clear the NYT lawyers don't understand that they are sharing their content freely on the internet via the RSS feed and there's no coinbox on the front-end to gate it.

This reminds me of companies complaining about web sites not getting approval to link them.

</comment></comment></comment><comment><USER4> So? remove NYTimes.com & Boston.com from the newsfeeds and screenshots and re- submit, should be fine.

In the end this will only hurt the NYT since they get less readers. I honestly dont get these 'failing newspapers' they cry about not making enough money, but when you get people interested in their product they start complaining.

</comment><comment><USER5> _"The Pulse News Reader app, makes commercial use of the NYTimes.com and Boston.com RSS feeds, in violation of their Terms of Use. Thus, the use of our content is unlicensed. The app also frames the NYTimes.com and Boston.com websites in violation of their respective Terms of Use."_

Excuse my language but; what a crock full of shit.

The last line in particular is the kind of thing that makes me really mad about lawyer driven nonsense such as this. What, for example, is the browser if not a frame?

Ok, I can partially buy the first section because of the commercial aspect; but I still think it is a bit idiotic to insist things like that. I simply don't see how anyone benefits from such action?

<comment><USER6> Was thinking the same thing. Unbelievable. And the 'frame' clearly even includes the ads in the NY Times website.

Pulse is giving them both free content and free ad distribution, and they're bitching about $4.

To paraphrase the creepy paperboy, "Four dollars! I want my four dollars!" Is that what the NY Times has come to?

Unbelievable.

</comment></comment><comment><USER7> Interesting timing. The NYTimes iPad app released an update yesterday that had a crash-on-start bug and required them to pull their own app from the store for most of the day.

<comment><USER8> Maybe they were jealous because people were buying Pulse rather than their own app ;)

</comment></comment><comment><USER9> Is there a website somewhere keeping track of the various App Store takedowns? It'd be interesting to see a nice list of them. Stories about apps being pulled for largely crap reasons seem to come up at a rate of about one a week, if not more frequently. However, although I've seen dozens of them, I don't think I've ever seen a nice list of them. I think it'd be interesting to see how the App Store policies are actually enforced.

<comment><USER10> I know it's fashionable to bitch at Apple for any app that gets pulled, but they received a legal notice from an attorney representing the NY Times, so they had no choice but to take action.

<comment><USER9> Fair enough in this case, and an even better reason for such a list. It could also point out cases where the takedowns were legitimate, but were bitched about. The fact that this case was fair (well, fair because legal action was threatened, otherwise I think it'd be somewhat ridiculous), the point still stands that it would be good to have some "case law" on the app store policies. Since the regulation is subjective, it would be useful to see how it's interpretted.

</comment></comment></comment><comment><USER11> Sometimes I wonder if the lawyers supposedly "protecting" brands release the harm they can do.

I wonder if the Times' legal department actually contacted anyone in product before doing this.

</comment><comment><USER12> Ironically Safari also "makes commercial use" out of NY Times' RSS feed (it's in the default bookmarks along with RSS).

<comment><USER3> Not so ironic if you consider that Apple probably has a legal agreement with the NYT company to do so. Just look at how frequently the NYT is featured in Apple commercials and presentations; this doesn't happen just by accident.

The problem here is that the Pulse reader is (from the point of view of the NYT) trying to get a free ride on the NYT's brand name. This is really no different from ripping off any other brand name to advocate your product, e.g., you can't advertise your "high-performance shoe laces" by prominently featuring Nike shoes without obtaining prior approval.

<comment><USER12> I think Steve just likes the NY Times and they know they can't build a browser but can (and have) written an iPad app.</comment></comment></comment>


Show HN: Idea Mash – A Side Project Idea Generator - <AUTHOR> https://www.mccallalexander.com/ideamash/ <comment><USER2> a guy calls himself a web designer and his one page app has left-right scroll. awesome.

<comment><USER3> It's probably an easter egg

<comment><USER2> sup mccall? hey read the bootstrap docs then try again</comment></comment></comment>


Thanks, Joe - <AUTHOR> https://akka.io/blog/2019/04/23/thanks-joe <comment><USER2> That is really sad. I read few books from him about design of distributed system.</comment>


Reversing Apple's syslogd bug - <AUTHOR> https://reverse.put.as/2016/01/22/reversing-apples-syslogd-bug/ <comment><USER2> This is a fantastic reverse-engineering writeup. It's always fun to see this kind of thing on HN.

</comment><comment><USER3> I'm curious whether any of the standard source code analysis tools would have caught this.

<comment><USER4> I doubt it, as the buggy code wasn't nonsense in the usual sense.

<comment><USER5> But it was suspicious. Seeing

      1 * sizeof(int)

directly in the code, not in a macro expansion, in my book is somewhat suspicious (people could do that for symmetry in a series of similar lines of code), but

      whatever_count + x * sizeof(int)

could easily trigger a heuristic "thou shalt not add a count and a size"

The code does not even need to be smart enough to determine that "whatever_count" is used as a count; if it actually is a size, it is worth warning about, too, so a somewhat vague warning would, in my book, be fine.

<comment><USER6> That makes sense. If it's not there, it's probably something that should be added.

</comment></comment></comment></comment><comment><USER7> Off-topic, but "put.as" to a Portuguese is like "hooke.rs" to an American/British. A great domain name for an "escort" service or porn site, I'll give you that :)

<comment><USER8> It appears to be very intentional: [http://put.as/](http://put.as/)

<comment><USER9> Might want to add a NSFW warning to that link.</comment></comment></comment>


Gay people are smarter according to study - <AUTHOR> http://neuroskeptic.blogspot.com/2012/04/homosexuals-are-smart.html

<comment><USER2> >However, it could be that in America and the UK today, smarter people tend to end up in the kind of social circles where being gay is (for whatever reason) more acceptable.

I'm pretty sure this is the biggest confounding issue. It's mentioned in the article, but I would like to see it addressed more.

<comment><USER3> _In America and the UK today, smarter people tend to end up in the kind of social circles where being gay is more acceptable._

It is a little problematic for the study. But it is a wonderful commentary on social politics.</comment></comment>


A fix for broken TextMate arrow keys in Snow Leopard - <AUTHOR> http://hivelogic.com/articles/fix-broken-textmate-command-arrow-keys-in-snow-leopard/ <comment><USER2> The latest TextMate update recently released fixes this. Just update, and you're done.

<comment><USER3> Should note that it probably is only in the cutting edge repository so you need to enable those.

</comment></comment><comment><USER4> Fix came through automatically. Avoid the bundle

</comment><comment><USER5> I hear there's a more comprehensive fix in TM 2.0.

<comment><USER6> TextMate 2: TextMate Forever</comment></comment>


Ask HN: Good 2FA backup practices - <AUTHOR> Recently I've been trying to come up with a good practice to follow when activating 2FA on new services. Obviously when you set up 2FA for an account you get 9 backup codes you can use, in the event of emergency, e.g., phone stolen.<p>Hypothetically if lets say your house burnt down, and it contained all your 2FA backup codes on mobile, tablet, paper, external devices and your computer what's your plan of action then? <comment><USER2> "in the event of emergency, e.g., phone stolen." it is also possible that your phone get hacked. If you end up in Can then you are screwed globally. No 2FA works.</comment>


Three conspiracy theorists took 'Q' and sparked Qanon - <AUTHOR> https://www.nbcnews.com/tech/tech-news/how-three-conspiracy-theorists-took-q-sparked-qanon-n900531 <comment><USER2> Article is from August 2018.

<comment><AUTHOR> Very true. But the article is still relevant as the whole conspiracy theory continues to maintain political traction in spite of being basically traceable, stem to stern.

<comment><USER2> Indeed — I only mention the article's publishing date because older articles on HN are often indicated in their titling.</comment></comment></comment>


Lulz Sec Revealed?? - <AUTHOR> http://pastebin.com/8QXyGdND

<comment><USER2> you really think its that easy? every fool would look up the dns-records, if he would like to see their heads rolling. I'm sure you can pay people via bitcoin to buy a domain. I've seen nothing that couldnt be faked easyly

</comment><comment><USER3> IIRC, this is old and has already been debunked.

</comment><comment><USER4> Adrian Lamo? isn't that the guy that ratted Bradley Manning to the FBI?

This is getting curiouser and curioser...

</comment><comment><USER5> Looks like a really weak attempt at a smear on Adrian Lamo.</comment>


First Episode Of HBO's How To Make It In America (Entrepreneurship Themed Show) - <AUTHOR> http://www.youtube.com/watch?v=1z8D_K2gFfs&feature=player_embedded

<comment><USER2> Also available for free on iTunes: [http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcas...](http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=353165044)

</comment><comment><USER3> Just watched the first free episode on itunes. I definitely liked it, as I love Entourage (it's from the same producers). Not sure if it's for everyone though. The way they mix in a more street style hustle/entrepreneurship is cool, and you'll also get more out of it if you're somewhat fashionable.

</comment><comment><USER4> It could be good and there are some nice little (for most HN people obvious) gems in there such as

"Everyone got ideas, no on wants to do the work. Don't tell me what you want to do, show me what you have done and I might write you a check"

</comment><comment><USER5> I was hoping for a documentary-stye show when I saw the title and watched the opening theme, which is well done. But then the episode began and I remembered what HBO is all about.

</comment><comment><AUTHOR> fyi, hbo partnered with youtube on this (it's on itunes too). it's legit and legal.

</comment><comment><USER6> It is nice of HBO to actually make a show about people struggling to make money for once. But other than that it does not look very good. They are obsessed with trying to make the main characters look cool, which means a lot of stereotypes and lack of realism. So it will probably be something like entorage (which suffers from the same problem).

</comment><comment><USER7> Blocked outside of USA

<comment><AUTHOR> unbelievable. sigh.

<comment><USER8> sigh indeed. The TV networks again are forcing me to go find a torrent.

<comment><AUTHOR> my roommate saw thepiratebay tonight for the first time. she's like: how hasn't something like this been sued? im like, hahahahahaha, oh they have. a) it doesnt work b) if it did, there would be more sprung up tomorrow. It's decentralized. her response: oh wow, they cant stop this, can they?

</comment></comment></comment></comment><comment><USER9> Is this any good?

<comment><AUTHOR> i sincerely enjoyed it. hbo makes quality shows and the guys behind entourage know their shit. it's not tech entrepreneurship, but i can respect the storyline about the hustle.</comment></comment>


"Good Code Is Easy to Change" – My New First Principle of Programming - <AUTHOR> https://spin.atomicobject.com/2018/12/05/first-principle-of-programming/#.XAfkl92zPVo.hackernews <comment><USER2> The word "change" is a very deep thing and people just use it casually. You may have a codebase where change A is easy to do and change B not so easy. So there is no way to say that this code is easy to change. What you can say is that this code is easy to change in so and so aspects only. Also, in most cases, the whole idea of ease of change may lead to over engineering because you will try to implement a simple feature in such a way that different aspects of the feature are easy to change but this ability to change these aspects is not free and will introduce complexity in the code. So yeah it is one of those subjective thing that people debate a lot but there is no clear way to figure out whats the right way.</comment>


Planet Plastic - <AUTHOR> https://www.rollingstone.com/culture/culture-features/plastic-problem-recycling-myth-big-oil-950957/ <comment><AUTHOR> "Humans are now using a million plastic bottles a minute, and 500 billion plastic bags a year"</comment>


Why g ~ pi^2 - <AUTHOR> http://godplaysdice.blogspot.com/2007/09/why-g-2.html

<comment><USER2> Interesting how few comments there are here compared to the neighboring story:

<http://news.ycombinator.com/edit?id=54977>

Seems like a corollary of that law of Parkinson's involving the bike shed.

<comment><USER3> Yeah. Even on Reddit the article generated an interesting dicussion: <http://reddit.com/info/2pspb/comments>

I guess it's more fun to pick on someone than to talk math. (Hey, that explains high school.)

<comment><USER2> Dang, people on reddit are smarter. How humiliating.

<comment><USER4> I dunno, maybe this article is discussing 'when to have tea'.

([http://en.wikipedia.org/wiki/Wikipedia:Avoid_Parkinson's_Bic...](http://en.wikipedia.org/wiki/Wikipedia:Avoid_Parkinson's_Bicycle_Shed_Effect))

He points out an interesting correlation. The meter is based on pi---whoopty shit. What's to talk about?

A lot of interesting articles get voted up and then nobody comments on them because there's nothing to say. Sounds like the system works pretty good to me.

As for redditt, looks to me like they're having a hard time understanding it. The comments page is basically scratch work. A preponderance of mathematical symbols isn't an indication of interesting math.

<comment><USER5> Actually, I only saw one comment that was neither stating or refuting some basic misunderstanding of the article (it helps that the title at reddit claims equality).

<http://reddit.com/info/2pspb/comments/c2pw8a>

It was modded -1 at the time I saw it. I wonder how can you downmod a purely mathematical argument in that context.

As for the smarts of either community, my opinion is that reddit being bigger you get a higher count of interesting comments but a lower signal to noise ratio overall. I don't think this example proves much either way.

</comment></comment></comment></comment></comment><comment><USER6> I have noticed g may be less in some pubs on Saturdays, so now I know pi decreases there as well.

<comment><USER7> Referring to Spearman's g?

</comment></comment><comment><USER8> Oh.</comment>


Ask HN: How can I use my existing app userbase to promote my app? - <AUTHOR>

My app targeted to a specific community crossed 10k downloads in just 3 days. However the growth has been linear since then. How can I use the existing user base to promote my app ? <comment><USER2> Be careful how you approach this. You don't want to annoy your current user base by advertising to them if the product is completely different to what they've currently signed up for.

You could market it as another product by the creators of x, perhaps that'd work? Just go about it carefully.

<comment><USER3> He asks how he can use his existing user base to promote the app - he never mentions a new app.

Correct me if I'm wrong, but I think he wants to know how to use the users to promote the same app.

<comment><AUTHOR> Yes you are correct. I don't want to promote any new or different app. I am talking about the same app. Can I import their contact book and send them invited ? (of course with the permission of the user ? ) I am thinking on those lines.

My app provides copyright free books in a particular language which is not very popular. Also, my app is the only app of this kind for that community.

<comment><USER3> > Send them invited?

Do you mean send them invites which they can share with their friends?</comment></comment></comment></comment>


Ask HN: Corporate lackeys-How much of the time are you actively working? - <AUTHOR>

I'm a recent college grad and new hire at a multinational corporation in the automation business.  So far it seems like I've been able to do  the tasks given to me pretty well. However, I'm only actively working on those tasks around 50% of the time it seems like.  The rest of the time, I'm either just goofing off, because I know I have time before I need to be finished, or waiting for something before I can actually do that tasks I'm given.
In the mean time, I surf as much as the corporate filter allows, mostly looking at technology and computer related news.  Sometimes I practice a little programming, or read up on Linux internals or something.  Or just surf Hackernews and read the interesting links.  (Dreaming/planning to do a start up someday.)
What are your thoughts? Should I be asking my manager for more work? Coast as much as possible? How much do YOU work in your corporate job? <comment><USER2> In a former life, I spent approximately 1 hour per day actually working (probably 2 if you count meetings). But that may be extreme - it was in the government contracting/aerospace industry.

<comment><AUTHOR> Thanks for being willing to admit that. Was it the culture of the company, or just the way it was for you? Here, people seem to act pretty slammed with work, then take a 10 min smoke break once an hour or so. And I don't see anyone else screwing off.

<comment><USER2> It was just the characteristics of the organization. Lots of government, unions, and huge tasks. It was tough to make yourself useful at all times. Keep in mind I was a contractor at a government facility (a NASA project) with government employees as managers and zero profit incentive outside of keeping the government guys happy with our company. We're talking about multi-billion dollar projects - it's easy for a junior engineer (like me) to get lost in that environment.

Needless to say, I work much more since I jumped to the world of startups and freelancing, and am much happier for it.

</comment></comment></comment><comment><USER3> I'd say, in a given week, I only do about 15 minutes of real, actual work.

<comment><AUTHOR> That is amazingly low. Do you feel adequately compensated for that amount of work?

</comment></comment><comment><USER4> Having been in a variety of companies and positions, I've observed that it varies quite significantly -- more between roles than between firms. Some of what I've observed has been quite disgusting, and frustrating when the slackers get in your way.

You'll have to decide your own career path through this, weighing the situations you actually encounter. I'd recommend using spare capacity to educate and train yourself further -- in things that interest you and appear to have a future, not necessarily their crufty, anti-pattern systems. If your employer ends up actually using your talents, they win (and hopefully you do, too -- but beware). If they don't, you're in a better position to move onto something better.

P.S. While you're there, be open to learning about what other people do. And when you encounter someone you really do respect, cultivate a good working relationship with them. This shouldn't be forced nor manipulative; you'll actually enjoy working with them, and if you have genuine interest and some ability, they'll probably enjoy working with you as well.

You may have just found a mentor.

These days, it can be increasingly hard to make a ("Big Co.") career out of such -- the layoffs and inanities are just too great. But maybe, and maybe it will lead to work that's genuinely interesting. And when you're in a bind, you'll have some resources to reach out to and some people who have an interest in watching your back.

Countless times, I've been able to get "the impossible" done because I can pick up a phone or send an email to the effective (sometimes regardless of formal management) point of control. They already know me and that I know my shit and don't BS. Maybe also I've done them some favors, in the past. So, if they can do what I'm asking, it's done.

(Regarding the last part, sometimes its helpful -- necessary -- to know when to keep your mouth shut, afterward.)

<comment><AUTHOR> Thanks for the comment. I can see what you're saying. I'm trying to keep my mind open and use the down time to learn interesting and useful things.</comment></comment>


Ask HN: Is there any evidence in favor of or against ketogenic diet? - <AUTHOR> 21, male, exercise regularly, healthy. I live in a friends circle with a lot of bodybuilders, eating 0 carb, high pro, high fat diet. I tried reducing my carb intake. I felt generally good, but nothing significant. I was skeptical to continue this any longer than a month or so because when I did some research on keto it seemed like there is almost no long-term study supporting keto for healthy humans. I found some evidence for unhealthy people: [1], [2], [7].
When I searched about people who support this diet I found two interesting things. For one, these people (as seen in this [3] reddit thread) are convinced that modern society likes the taste of carbs and feel "safe" eating plants, so people don't want to spend money on researching keto diet (as seen in that thread). I'm skeptical of this since research institutes do research on things public is not generally interested in.
Second, proponents of this diet seem to think this diet is practiced by ancient humans before agriculture. Recall the contents of Iceman Otzi's stomach before he was murdered [4]: fatty goat meat and pure fat (lard). We, HN, recently discussed the lifespan and general health of our ancestors. [5]
There is also this [6] research paper:
> A low-carbohydrate diet based on animal sources was associated with higher all-cause mortality in both men and women, whereas a vegetable-based low-carbohydrate diet was associated with lower all-cause and cardiovascular disease mortality rates.
[1]: https://www.ncbi.nlm.nih.gov/pubmed/27060389
[2]: https://www.ncbi.nlm.nih.gov/pubmed/24386671
[3]: https://www.reddit.com/r/ketoscience/comments/7o54yh/longterm_keto_study/
[4]: https://news.nationalgeographic.com/news/2011/06/110623-iceman-mummy-otzi-meal-goat-stomach-science/
[5]: https://news.ycombinator.com/item?id=18132096
[6]: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2989112/
[7]: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2716748/ <comment><USER2> [6] [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2989112/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2989112/) is a questionnaire, meaning the study design is flawed from the start. What you are looking for is double-blind, placebo-controlled randomized studies, not funded by the meat, egg or diary industry. For example, you can take a look at these studies here [https://www.ncbi.nlm.nih.gov/pubmed/?term=Fung%20TT[Author]&...](https://www.ncbi.nlm.nih.gov/pubmed/?term=Fung%20TT\[Author\]&cauthor=true&cauthor_uid=20820038)

Iceman Otzi had an artherosclerosis, not the best example of good health [https://www.livescience.com/62689-otzi-iceman-mummy-heart- di...](https://www.livescience.com/62689-otzi-iceman-mummy-heart-disease.html)

[7] [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2716748/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2716748/) is only 24 week period, following obese patients, which already have extremely high levels of LDL by default. First of all - 24 weeks is not that long of a period, second - if you just put obese people on any kind of diet that restricts calories or reduces the amount of processed foods they eat - it is only natural that they LDL will be lowered as a result

You can also take a look at this compilation of health studies: [https://docs.google.com/spreadsheets/d/1cOFTFhMg1UakqvP5MGe6...](https://docs.google.com/spreadsheets/d/1cOFTFhMg1UakqvP5MGe6p0w75SbQWuJM32SBHZrw0Q4/htmlview#)

</comment><comment><USER3> I have made a few attempts at eating more ketogenic style in the past year, reading some things that seemed promising. Anecdotally, I found it inordinately difficult to stay that low-carb for very long; it seemed especially difficult to stay low-carb and also restrict calories (aiming for some weight loss on this end); I seemed to feel physically less healthy eating that way than I do favoring more of a vegetable / beans / lean-meats diet.

So I have, at least for now, given up on that.

As far as evidence... really not sure what to say. For anything I found supporting ketogenic eating, I could find something else that did not support it. So many conflicting "nutritional science" reports that I'm really not sure who to believe, and thus, for me personally, I'm more inclined to go with whatever reports seem to best mesh with my anecdotal personal results.

I do notice that pretty much every credible-sounding diet plan advocates for less processed sugar and less heavily processed grains, so that much should be easy.

</comment><comment><USER4> My opinion has always been, balanced is best.

If you have to stick to a 'high' anything diet, make it vegetables.

I practice semi-Keto. But it works for me. I have a hard time controlling my self when it comes to eating/snacking. I find that high protein/high fat foods are more filling per calorie and stops me from devouring high carb snacks.

I think people get turned on by the near-instant weight drop when you cut out carbs from your diet and lose water weight in the first few days.

Keto is also expensive and harder to stick to exactly than I'm willing to put in the effort for. I supplement 'no carbs' with 'some carbs' from whole grains, beans, and veggie-carbs to help bring down the cost.

The healthiest thing to do (imo) is to a) not over-eat, b) avoid added sugar, c) get your micro nutrients, d) mix it up

<comment><AUTHOR> My personal and limited experience also has been low-sugar, mid-carb, high- fiber (lots of broccoli), high-protein, high-fat diet seems to make me _feel_ better. Although, it goes without saying, feeling better isn't isomorphic to being healthy, living longer, or maximizing your bodily functions (such as muscle building, better cognition or better sex life).

</comment></comment><comment><USER5> If you have an autoinflammatory disease (of which there are many) then absolutely anything that lowers blood sugar and slows you down will improve your symptoms for the simple reason that your body doesn't have quite as much spare energy to attack itself. But you're still deliberately making life difficult your body, so a shorter lifespan isn't too surprising.

Vert short periods of ketogenesis are a different story entirely.

[mouse study] [https://www.salk.edu/news-release/eating-in-10-hour- window-c...](https://www.salk.edu/news-release/eating-in-10-hour-window-can- override-disease-causing-genetic-defects-nurture-health/)

<comment><AUTHOR> I'm not following you? The paper I gave can equally suggest longer lifespan, or it can suggest animal-based diet causes shorter lifespan. Also anecdotal evidence seems to suggest keto gives people more energy, not less unlike what you suggested, and I'm struggling to find any paper supporting these claims (both yours and anecdotal reddit evidence)?

<comment><USER5> With a serious inflammatory disease, you'll have more energy if your body tones down the cytokines than the little energy you had before; but not normal energy because you've got 30% less blood sugar to play with. People in normal health do less under a ketogenic diet, as one would expect.

</comment></comment></comment><comment><USER6> Eating too much protein and not drinking enough water seem to cause more problems on keto than standard diets.

You must read about ketoacidosis as that seems to easily be the most dangerous risk. Diabetes is the main trigger for this.

The distinction between MCT (coconut essentially) and LCT based keto is very significant - especially since the MCT diet can be pretty much vegetarian.

I've gotten a lot of mileage out of assessing other things on their own merits and by their own rules since the majority of nutrition isn't about macros. For example, eggs can become a bigger part of your diet on keto so it's important to research eggs - which in my case resulted in salmon as a source of omega 3.

I don't have any difficulties staying on keto but I'm also a good cook and every supermarket in my country is more like Whole Foods than a normal US supermarket, according to friends who have been there (I have no idea what they're talking about).

Finally, checking citations of various articles both for and against has just lead me to ignore anything other than papers (and even then with a grain of salt - @ajaxaddicted's sheet is a cool way of doing it).

</comment><comment><USER7> The real question is whether or not ketogenic diet is good _for you_. Unfortunately, the literature simply cannot supply a clear answer either way.

Joe Rogen just did a great show with two scientists discussing the evidence for and against carnivore vs. ketogenic vs. low carb. vs. high carb: [https://youtu.be/u93oh9kC-rU](https://youtu.be/u93oh9kC-rU). In summary, we're a long way off from matching an individual's biomarkers to an optimal diet, but caloric restriction seems to provide the bulk of the benefits for any given diet.

<comment><AUTHOR> I'm sorry I want to make myself clear that I'm a lay person so I'm not trying to be skeptical. But is this correct? This conflicts with my understanding. E.g. I have a family history of heart diseases (although mine and my sister's hearts are healthy so far) so proponents of high-carb diet would claim fat would increase the likelihood of heart disease by clogging my arteries. But low-carb people would claim fat would have no affect on my arteries, and the only factor would be my genetic markers making heart diseases more likely. I would guess that if this debate was settled, wouldn't it be easy to just say keto is bad since it increases the likelihood of heart diseases. But I really cannot find evidence supporting this. Quite the contrary, plant based low carb diet seems to decrease these diseases. What's going on here?

Even if you were to personalize my diet based on my full history and genetics, it doesn't seem possible you could do that, since we don't have evidence even for that.

<comment><USER8> As best I can tell, the comment is accurate and asserts three things:

1\. It depends a lot on individual factors.

2\. What we know is limited.

3\. Caloric restriction seems helpful, regardless of what you actually eat.

I haven't really looked at keto. What I can tell you is that different fats have different chemical composition and this impacts how the body reacts to them, especially if you have specific problems.

I have no plans to ever get all that knowledgeable about keto. I don't think it actually makes sense and I suspect its positive reputation is probably rooted in benefits from confounding factors that haven't been identified, such as inadvertently eliminating allergens for some people. If you stop eating things that are actively making you low grade sick, you will feel better, possibly dramatically so, and it almost doesn't matter what you actually are eating, so long as it is less harmful than what you were consuming.

<comment><USER7> "...inadvertently eliminating allergens..."

Whatever your view on ketosis, I strongly agree that food allergies may be causing more grief than we know. In particular, I suspect most people with GERD are consuming food they're allergic to. It's tragic.</comment></comment></comment></comment>


Website offers bounty for iPhone 5S hack - <AUTHOR> http://www.cnn.com/2013/09/22/tech/mobile/iphone-5s-hack-bounty/

<comment><AUTHOR> A little late, given [https://news.ycombinator.com/item?id=6427390](https://news.ycombinator.com/item?id=6427390).</comment>


Linux Kernel 5.3 - <AUTHOR> https://www.omgubuntu.co.uk/2019/09/linux-5-3-kernel-release-features <comment><USER2> An interesting discussion in Linus's release announcement email about userspace regressions: [https://lkml.org/lkml/2019/9/15/241](https://lkml.org/lkml/2019/9/15/241)

<comment><USER3> More technical details here: [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.3&id=72dbcf72156641fde4d8ea401e977341bfd35a05)

<comment><USER4> > Do we just make it act like /dev/urandom by default, and add a new flag for > "wait for entropy"?

Dear God. The CSPRNG situation on Linux is deeply depressing.

/dev/urandom is useless because it spews non-random data if it hasn't been seeded yet.

/dev/random is useless because it starts blocking if you try to read too much data from it, because of a mistaken belief that a properly seeded CSPRNG can run out of entropy.

Plus they're both slow as hell, so people try to implement their own PRNGs, often having bugs in the generator or seeding, leading to security issues.

Meanwhile the BSDs have handled this correctly for years. But inexplicably, instead of actually fixing /dev/(u)random, the Linux engineers decide to add a new getrandom() syscall which implements the correct behaviour of only blocking if the PRNG hasn't been seeded.

So finally with getrandom() Linux has a way to securely generate random data without unnecessarily blocking, and now Linus seems to be floating the idea to break it again!

The kernel has plenty of ways to securely seed a PRNG at boot on modern systems; IRQ timings, multicore tricks, sensor data, etc. Run some statistical tests on it to ensure you have a couple hundred bits of randomness and you're done.

<comment><USER5> > So finally with getrandom() Linux has a way to securely generate random data > without unnecessarily blocking, and now Linus seems to be floating the idea > to break it again!

Yes, getrandom() works pretty much the "right" way. But the problem is that it still can block during boot, indefinitely. And nobody really wants their computer to just stop working, because it can't _guarantee_ that the entropy is not theoretically possibly "bad". Real users do not want this. But it happens.

The root of this is security paranoia. Security people didn't want the RDRAND instruction to be trusted. SystemD didn't credit the entropy pool when adding the saved seed file from the previous boot, until very recently it got an option to credit the entropy pool. These things are all mixed into the pool, and on any desktop machine /dev/urandom is absolutely fine, but security expert pressure has forced these systems to not trust that real entropy has been added from the many sources that are already implemented. You might be surprised how many people make this problem go away by running havaged, which provides very dubious entropy.

<comment><USER6> > _You might be surprised how many people make this problem go away by running > havaged,_ [sic] _which provides very dubious entropy._

My personal favorite is:

      # rngd -r /dev/urandom -o /dev/random

<comment><USER7> TBF that's a proper fix for the stupidity that is the entropy estimator.

</comment></comment></comment></comment></comment></comment><comment><USER8> > 2015 era MacBooks and MacBook Pros get working keyboard and touchpad support > with this release, courtesy of the Apple SPI driver

Anyone know if the audio for >=2016 era macbooks will ever be made to work? [https://github.com/Dunedan/mbp-2016-linux](https://github.com/Dunedan/mbp-2016-linux)

<comment><USER9> Btw: The quoted changes for MacBooks are slightly inaccurate. MacBook Pro's from 2015 already had working keyboards and touchpads as they have them connected via USB as well. The models which got support now are:

\- MacBook 2015

\- MacBook 2016

\- MacBook 2017

\- MacBook Pro 2016

\- MacBook Pro 2017

Mind that MacBook Air's and MacBook Pro's from 2018 onward still don't have upstream keyboard and touchpad support.

</comment></comment><comment><USER10> What stand out is Google GVE driver. It's first of a kind:

1\. GVE host will never see the light of the day

2\. Never be used outside of Google's DCs

3\. Hardware that backs its is very likely of Broadcoms origin, with their virtualisation API.

4\. It made it! Unlike dozens of attempts by other companies to do the same for their proprietary in-DC hardware. How one does it?

</comment><comment><USER11> Sadly looks like WireGuard missed the cut again

<comment><USER12> There's still progress being made, but WireGuard does do a lot of things to/for the in-kernel cryptography stuff. That's been the major holdup for getting it in. There's some that don't like that a new api is being made at all but I believe most are fine with that as long it shares as much internally as possible with the existing code so that there's not two copies of everything. A lot of that has been done last I heard but it wasn't quite ready yet for mainlining in that fashion. I suspect we'll see another RFC for it in the 5.4 merge window and maybe finally some traction at getting it into staging or all the way in.

EDIT: see sibling comment about wireguard and 5.4, apparently not slated for it this time but maybe 5.5.

</comment></comment><comment><USER13> I'm confused about the source, didn't Linux Journal just shut down (for the second time)?

<comment><USER14> OP/submitter signed up a month ago and has spent the past week spamming nothing but links to his own splog, which uses old linuxjounal material for 99.9% of its content.

With this he has simply copied an article from Omgubuntu and spammed it via his splog, where he even puts his own name on it.

The link should be changed to the correct Omgubuntu link to credit original and up to date content and not lazy copy and paste spammers.

<comment><USER15> It helps if you email email@example.com and tell them that. Dan replied to me in about 60 seconds.

<comment><USER14> Ah, thanks. I'll do that if there's a next time.

</comment></comment></comment></comment><comment><USER16> I for one am excited that 5.3 potentially includes a bug fix for the random hard freezes I see ~daily on my laptop with a Baytrail cpu [1].

Had sort of given up on it ever being resolved, but sounds like a patch got into 5.3 that may fix it. Installed 5.3-rc5 last night. Guess I'll wait and see if it actually resolves the issue.

[1] [https://bugzilla.kernel.org/show_bug.cgi?id=109051](https://bugzilla.kernel.org/show_bug.cgi?id=109051)

<comment><USER17> Installed Ubuntu Mate 19.10 daily 5 days ago on asus t100ta (Atom) and have had absolutely no issues. Added bootia32 to liveusb as is the norm with this machine.Still no camera, but no big deal for me. Everything else works perfect. No c-state freezes and no workarounds needed. 5.3 seems to have fixed the baytrail issues as advertised.

<comment><USER16> I also have not had a hard freeze since upgrading to 5.3. Very pleasantly surprised. I've had a few times where things get very laggy, but they pull out of it. I imagine those are the situations where it would freeze up before.

</comment></comment></comment><comment><USER18> If you game on Linux, note that the 5.3 upgrade DualShock controllers. A recent systemd upgrade also broke some udev rules for controllers. That is easier to fix though:

        sudo modprobe uinput.

[https://www.gamingonlinux.com/articles/you-may-want-to- hold-...](https://www.gamingonlinux.com/articles/you-may-want-to-hold-off-on- linux-kernel-53-and-systemd-243-if-you-use-a-gamepad.15023)

</comment><comment><USER19> does anybody know when Wireguard is going to be merged? can it be done before the release that will be deployed in Ubuntu 20.04 next April or is it too late?

<comment><USER20> According to this article: [https://www.phoronix.com/scan.php?page=news_item&px=WireGuar...](https://www.phoronix.com/scan.php?page=news_item&px=WireGuard-0.0.20190913)

Wireguard won't be in before 5.5.

5.5 should release in early february 2020 so it might be in Ubuntu 20.04.

<comment><USER19> Thanks, let's hope so, making it in Ubuntu 20.04 will be a huge success since Ubuntu LTS versions are used heavily and supported by all major cloud vendors

</comment></comment></comment><comment><USER21> Navi support has finally arrived.

<comment><USER22> In the Kernel, if you're not running the very specific version of Ubuntu they compiled you still need a ton of custom packages from mesa-git and others. I think we're still a few months from stable on all packages and then further months from those packages making it into distros.

<comment><USER21> Mesa 19.3-rc3 is enough. Besides, that you also need Navi firmware (not sure why it's not in upstream repo yet¹): [https://people.freedesktop.org/~agd5f/radeon_ucode/navi10/](https://people.freedesktop.org/~agd5f/radeon_ucode/navi10/)

That's about it. I wouldn't use Ubuntu for Navi though. Some rolling distro makes more sense.

1\. [https://git.kernel.org/pub/scm/linux/kernel/git/firmware/lin...](https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux- firmware.git/tree/amdgpu/)

</comment></comment></comment><comment><USER23> > makes 16 million new IPv4 addresses available

How is IPv4 address availability up to the Linux kernel?

<comment><USER24> 0.0.0.0/8 is now an allowed range

[https://hub.packtpub.com/linux-kernel-announces-a-patch- to-a...](https://hub.packtpub.com/linux-kernel-announces-a-patch-to- allow-0-0-0-0-8-as-a-valid-address-range/)

</comment></comment><comment><USER25> Original article is at [https://www.omgubuntu.co.uk/2019/09/linux-5-3-kernel- release...](https://www.omgubuntu.co.uk/2019/09/linux-5-3-kernel-release- features)

<comment><USER26> Thanks! Url changed from [https://linuxjournal.rocks/post/linux- kernel-53-released-thi...](https://linuxjournal.rocks/post/linux- kernel-53-released-this-is-whats-new).

</comment></comment><comment><USER27> Since I'd need to create a new account on that site specifically to send this correction...

Paragraph 6, s/Chromebook harder/Chromebook hardware/

Spellcheck is not a proofreader.

</comment><comment><USER28> Monolithic kernel means the changelist includes everything from file systems to GPU drivers.

<comment><USER29> It also means that everything either works or doesn't work.

A dependency tracking system with mix & match of versions of subcomponents of the kernel that either work together or not looks like a nightmare to me.

<comment><USER30> > It also means that everything either works or doesn't work

Isn't quite a large percentage of the Linux kernel in the form of loadable modules, such that a given running system will only running a fraction of the total code?

<comment><USER31> Yes but these modules are built from the exact same code version as the kernel being used. No dependency hell.

But maybe such a solution could work with a micro-kernel architecture too. It seems that a micro-kernel and its components could also be gathered in a same code base. You would get the kind of changelog the first commenter of this thread mentioned though. It seems we are speaking of two different things here: code management and kernel architecture.

<comment><USER30> Ok I misunderstood, having fallen into the trap of reading and reacting to the first sentence before reading the rest. (: I didn't realize that the topic was dependency management, but rather about 'kernel breakage'. My apologies.

I have professional experience in large organizations that use monorepos, and have been impressed with the results.</comment></comment></comment></comment></comment>