I want to build a large format, real-time, physical music visualizer that could orchestrate an artistic light symphony for any song.
I'm imagining physical visualizers that are columns of multiple, discrete light nodes, each able to have variable brightness and color.
The real-time music processing is the hard part (for me) to crack.
There's some standard tricks here: FFTs, bandpass filters, etc.
But I want to do more: Real-time stem separation, time signature and downbeat tracking, etc.
Imagine hearing Sweet Caroline and, when the horns kick in, the whole installation 'focuses' on the horns and bright yellow light jumps between each column on each horn note, before returning to tracking the bass line or something.
I've been noodling on this idea for a long time and slowly digging into the music and CS fundamentals. The rise of LLMs might finally be the piece that enables me to close my intelligence gap and finally build this thing...
- Setup VMs locally, on your development machine. (This eliminates the cost of hosting but gives you all the technical learning opportunities). My development machine is macOS and UTM has been an excellent app to manage these VMs. You can eventually model your VM's configuration around what resources your VPS will have on AWS/DO (e.g. 1GB RAM, 2 vCPUs, etc).
- Learn the basics of Ansible, in order to provision a server (local or remote). I did the course on KodeKloud.com and found it great to getting me going quickly.
- Write Ansible playbooks to provision your local VM as you would want your VPS on AWS/DO/etc to work. Ansible Galaxy is a repository of many community-supplied roles for common tasks/services. You could consult these for best practices on building your own playbooks or totally offload provisioning onto those roles.
- Once you're comfortable getting your local VM setup, point your Ansible playbook at an AWS/DO VM and put it online!
My high-level roadmap has been to build my own Ansible playbook to provision a Ubuntu server to CIS Level 2.
CIS benchmarks define security controls for a few of the more common aspects of DevOps work (e.g. Ubuntu OS hardening, AWS account security, Docker host, etc). They're freely available and there's many well-maintained scripts that can both audit and provision your host to the standard. I've been using the benchmarks as an easy to way to self-teach security aspects (and validate I've done it correctly). Level 2 is the standard used to handle financial information and medical records, so it's probably the most secure you'll ever need to go.
Once I have a provisioning playbook to stand up a secure host with some services (Nginx, Redis, etc), the next goal on my roadmap is learn Terraform to configure + deploy a personal cloud of services to AWS/DO/etc.
Similarly, Google purchased reCaptcha and ended up harnessing the stream of human interaction into that to, among other things, classify all of their Street View content (e.g. select the stop lights/bridges/license plates/etc).
Looking at the Beeper Mini announcement [1], they clearly state that a user doesn't need an Apple ID to register their phone number and send/receive iMessages. Also, they describe direct, device-to-Apple interactions.
However, this article says:
> IDS is used as a keyserver for iMessage...
> The first step in registering for IDS is getting an authentication token. This requires giving the API your Apple ID Username and Password.
> After registering with IDS, you will receive an “identity keypair”. This keypair can then be used to perform public key lookups.
So how does the Beeper Mini app take an arbitrary Android phone number, register public keys for it with IDS, and perform public key lookup of recipients... all without ever using an Apple ID?
EDIT - It looks like the answer here is the 'SMS Gateway' which is virtually undescribed in the OP article or anywhere on [1]. Guess that's the secret sauce.
I've hesitated to ever attempt this because every residential ISP I've had refuses to offer static IP addresses.
As well, deploying a server in a Google/Amazon/Microsoft datacenter which could be surreptitiously monitored defeats the theoretical privacy aspects of on-premises mail server hosting inside one's personal residence.
However, today, I looked into the newish movement of 'confidential computing' in the cloud (where data in motion - e.g., in memory - is encrypted and cannot be observed from the OS or hypervisor).
I openly wonder if one solution, then, is to build a secure VM that acts as a simple forwarding proxy to one's home server, gets assigned a static IP from a datacenter, and is deployed on one of these confidential computing instances, ensuring full E2E data privacy and data control?
Hi, I'm Josh. I've been developing iOS apps for the last 7 years including Tinder, CrowdRise, and LivingSocial. I've also spent time at Apple, Google, Microsoft, and an acquired startup. (I'm most proud of rebuilding the Tinder card stack and watching it spend over a year in production (2015-2016).)
I can help your team with...
- Designing and developing stable iOS features, quickly
- Mentoring developers on best practices in mobile app development
- Setting up a CI pipeline, code reviews, and unit testing
When I worked at Apple, it was fun to walk in some buildings and notice the California 'cancer warning' sign posted in the lobby. From that, you knew there was probably a hardware engineering lab somewhere in that building, because I believe they had to post those due to carcinogens released from soldering. (And, inside of Apple, that kind of knowledge would only be shared on a need-to-know basis, otherwise.)
I'd like an OSS solution that will allow me to deploy an arbitrary server-side service - be it a Ruby, Python application or even a package like OpenVPN - to some cloud infrastructure, easily.
This solution should spin up a hardened OS distro (CIS-compliant, maybe?), provision it with my arbitrary services (using Ansible or Chef or something), and deploy it to AWS or some cloud infrastructure for me (using Terraform or something).
All these component pieces exist, but nothing ties all of them together for an easy deploy for a front-end developer like me.
(And, I know things like Heroku and CodeDeploy exist, but I dislike lock-in and they nearly universally come with their own restrictions, like lack of support for server-side Swift applications or custom services like OpenVPN or git-annex.)
EDIT - I'm strongly considering taking some time off to write this soon, so get in touch if this is something you're interested in! Contributing or using!
I assumed this was happening through their acquisition of Rapportive and all the authorized Gmail plugins that came with that. But this... this is sneaky.
Hi! I'm Josh. I've been an iOS developer for 5+ years. Recently, I finished leading the development of a ground-up Swift app. Prior to this, I used to work at Apple, Google, Microsoft, and an acquired startup. I'm focused on building things people love to use.
For more on my background, please see my portfolio: https://iamjo.sh
You're the founder of Cocoa Controls?? Thank you for creating an incredibly valuable resource that I've used frequently for many years, and do get in touch if you ever find yourself in LA and would like a free beverage on me!
In the article, the author mentions contacting Google + they instruct him to attempt pen testing on [email protected]. Didn't know they maintained an account like that. Interesting.
Alamofire (an all-Swift library) is linked in 31% more of the top 200 free apps than AFNetworking (an all-Objective C library). I guess Swift is still making headway into Big Apps...
Also, 6 apps are still using ASIHTTPRequest, despite the last release being 5 years ago.
Worse still, 3 apps use a combination of ASIHTTPRequest, AFNetworking, and Alamofire - that's a library that was abandoned 5 years ago, an Objective-C library, and a Swift library. Oh man.
I thought I once read that, since Touch ID relies on fingerprints, a US court order can compel you to provide those, thus forcing you to unlock an iPhone in question.
This, as opposed to a passcode-only configuration, which a court order cannot compel you to give (I believe since this would fall in the category of 'forcing you to testify against yourself').
If that is indeed the case, I imagine it would make better sense to leave Touch ID disabled, unlike what this article suggests.
IANAL, but, for the _California_ readers, I'm fairly certain a contract with a clause like 'losing all intellectual rights to ANYTHING done/written/created ANYTIME and ANYWHERE' will NEVER hold up in California court, assuming said projects are done with the employee's own time + materials.
...Which is also a strong reason why you should always avoid using/making/doing anything personal on your employer's laptop/equipment.
I've done a small amount of work for a Swift-based project that was packaged as CLI program. FWIW, it was a really difficult project to develop for.
This mainly had to do with the fact that the project had to be built from a hacky Rakefile, not Xcode. This was because Xcode would embed the Swift runtime only into an .app or .ipa file (because projects need to be shipped with the same Swift version used to build it, thanks to lack of ABI stability). But, as a CLI tool, there was no .app bundle - only a single executable. One downfall.
So, now that you're not using the Xcode IDE to build + run the project, you can't use the debugging IDE tooling in Xcode, making the development process that much harder. Another downfall.
I haven't checked if this has been fixed in recent builds (this all happened back in January), but figure that these are the kind of issues you're going to encounter, until the Swift language is a little more stable + proper tooling evolves.
That said, it seems pretty clear the future is Swift, so it would be better to start building experience with it sooner rather than later!
I'm imagining physical visualizers that are columns of multiple, discrete light nodes, each able to have variable brightness and color.
The real-time music processing is the hard part (for me) to crack.
There's some standard tricks here: FFTs, bandpass filters, etc.
But I want to do more: Real-time stem separation, time signature and downbeat tracking, etc.
Imagine hearing Sweet Caroline and, when the horns kick in, the whole installation 'focuses' on the horns and bright yellow light jumps between each column on each horn note, before returning to tracking the bass line or something.
I've been noodling on this idea for a long time and slowly digging into the music and CS fundamentals. The rise of LLMs might finally be the piece that enables me to close my intelligence gap and finally build this thing...