Objective-C: Format Currency Strings from Double Values with NSNumberFormatter
Converting a decimal number to a currency string is simple with NSNumberFormatter.
Converting a decimal number to a currency string is simple with NSNumberFormatter.
Compiling Facebook SDK with Xcode 6 is not yet an option.
git checkout 6c1d1862 AppConsumer/Curbsidr.xcodeproj/project.pbxproj
git tag -a prod-0.9.7 -m 'add analytics'
Push notifications on iOS 8.
By default all the apps (even compiled with Xcode 6 and iOS 8) will run in a scaled mode on both iPhone 6 & iPhone 6 plus.
Unfortunatrly, Homebrew breaks after an upgrade to OS X Yosemite.
Keeping Ghost installation up-to-date is important not only because of new features added but also because of all the security updates.
The update just failed every time I tried to install.
Yosemite has Python 2.7.6 built in but for many reasons (one of them is sudo) we prefer a clean up-to-date install.
Having a different application name for release and development builds.
Generating the path dynamically with NSSearchPathForDirectoriesInDomains.
A frequent mistake when playing a local video using [AVAudioPlayer initWithContentsOfURL:url] is to use URLWithString instead of fileURLWithPath.
Digital Ocean has a great tutorial on how to install Nginx with Phusion Passenger, RVM, and RoR on Ubuntu.
YAmazon S3 does not like dots in bucket names.
Rails is heavily using environment variables in its configuration files.
After upgrading to MySQL 5.6 from 5.5 we started getting an error: Incorrect MySQL client library version!
We all understand the frustration users experience when software malfunctions...
We needed to add Volley networking library into our project.
After upgrading ubuntu pip started throwing the following error...
Renewing a certificate is not fun so it is better to use Let's Encrypt but if that is not an option...
URI - the part of URL that comes after the domain (or IP/Port) name.
Just a bunch of short expressions in Swift.
Positioning views relative to one another with auto-layout was fairly tricky until...
While starting iOS 9 we have UIStackView, it is a little bit tricky to stack views vertically or horizontally.
In Swift, we have a syntax candy called 'guard'..
A small button named 'Debug view hierarchy', displays current view hierarchy in 3D.
Decouple, separate, disengage, or dissociate (something) from something else.
Shapefiles are technology from the past when desktops ruled supreme.
git rm -r --cached .
Debugging errors that are a result of observers being added to an object and not removed from it can be hard.
Recently we had a need in a general way to catch calls that can throw an exception.
In Xcode 8, it is no longer possible to create NSManagedObject subclasses...
The following code is causing a compiler crash when compiled with Swift 3 and Xcode 8...
Collection view is highly optimized and works great out of the box.
A property in ReactiveSwift allows us to track its changes over time.
According to the documentation, to use ReactiveSwift.playground the following steps must be performed...
The power of ReactiveSwift lies within its operators!
Unfortunately stabilizing MySQL on our tiny server was not simple and in fact the only thing that helped was a SWAP file.
ne of our views that contains a UICollectionView started crashing once in a while...
Lawyers are the worst. An example of terms of use...
While browsing our Node.js site logs we have noticed the following error...
On iOS 10, a collection view embedded in a view has unexpected padding at the top.
git rebase -i 95eeee3^
git remote prune origin
Picking your compilesdkversion, minsdkversion, targetsdkversion.
RSA verification process is similar to RSA encryption/decryption process with one major difference.
RxSwift.Resources are being used to detect memory leaks during pre release tests. Solving Use of unresolved identifier 'Resources' error.
All we needed was a simple UICollectionView with just one cell that contained a label ...
We needed a collection view cell that contained an image view and a label.
RxSwift is a powerful framework and, as always, with power comes responsibility.
Symbolification is the process of mapping machine addresses into the source code. The tricky part is that by default .DSYM file is only generated for release builds.
How to create a framework that uses C with Xcode
It is fairly easy to use UIScrollView with the AutoLayout on iOS 12+ but only if one follows the following steps ...
We started using Ghost when it was still in its very early stages ...
It has become pretty common among Swift experts to always use [weak self] inside of a closure to avoid retain cycles ...
XCTest expectations are great but it is not easy to use them.
Why do we need to inject dependencies and some tools that help with it...
Trusting all certificates allows anybody to do a man in the middle attack
In this article we will be setting up an OpenVPN client on OpenWrt.
In this article we will be adding a shared local library to a monorepo.
In this article we will go over deploying microservices into a Kubernetes cloud. Part 1.
In this article we will create a comprehensive learning path to take you from beginner to proficient in about 8-10 months with consistent daily practice.
A list of key concepts that build a strong foundation for Phase 1 of the learning path.
A step-by-step guide to creating a production-ready Kubernetes cluster
A step-by-step guide to building a modern SwiftUI Recipe Book app for iOS and macOS.
How we built ObservedOrStateObject to let SwiftUI views own or observe view models without duplicating code.
SwiftUI silently ignored save error alerts once a second alert existed, and this post captures what we learned in the Advanced SwiftUI: Lessons From Mistakes series.
During test teardown we hit a repeatable 'pointer being freed was not allocated' crash while deallocating a @MainActor ObservableObject, and this post explains why we treated it as a Swift runtime edge case instead of rewriting our architecture.
After enabling stricter Swift concurrency checks, we started seeing main-actor isolation errors from @MainActor initializers that used default parameter values. This post explains why default parameter expressions are nonisolated and how to fix the pattern by moving defaults into the initializer body.
Under XCTest teardown we hit a repeatable 'pointer being freed was not allocated' malloc crash when deallocating async/Combine-heavy DependencyContainer and view models. This post explains what was happening and why we fixed it by deliberately leaking those objects in DEBUG tests only.
A practical guide to project-level TypeScript declaration files like typings.d.ts, with examples for assets, globals, and third-party libraries.
A practical filter-first, then rank system: screen out unhealthy dividend stocks, score the survivors, and keep the 10 best.
Use the AWS CLI to pick the latest Amazon Linux 2023 AMI, launch an EC2 instance with a 100 GB gp3 root volume, and connect over SSH.
End-to-end setup: Nginx on Amazon Linux 2023, Cloudflare DNS/proxying, and Let's Encrypt certificates via Certbot for Cloudflare Full (Strict).
A comprehensive overview of technologies powering modern web applications, from backend to deployment, and the reasoning behind our choices.
A beginner-friendly guide to using different API URLs for local development and Docker Compose, with clear environment file examples.
Block real HTTP calls in tests to keep them deterministic, fast, and safe by forcing every outbound request to be mocked.
Keeping containers running isn't enough; you need to know they're actually healthy. Learn how to configure, observe, and act on Docker health checks with practical snippets you can lift into your own projects.
A plain-English guide to quality and profitability metrics: what they mean, how they fit together, and how to read them without needing a finance background.
Traffic to firgun.win briefly 302'd to a malicious Arweave link because a stray container had claimed port 3000. We rebuilt the app, pruned stale containers, and tightened post-deploy port checks.
How to read valuation and shareholder yield with a simple point system that leans on sector medians, guards against one-offs, and keeps cash reality in focus.
We tried Fluent Bit + Lua to scrape Docker logs into OpenObserve, hit schema and parsing pain, and pivoted to emitting OpenTelemetry directly.
A systematic portfolio rotation strategy using 70/20/10 factor weighting (valuation/quality/safety) to identify undervalued opportunities while managing risk through disciplined turnover.
How we transformed 3-minute financial report load times into 20ms responses using pre-generation, database caching, and scheduled jobs.
How we built a reusable skeleton loading system in Next.js App Router that improved perceived performance by 40% and reduced bounce rates by 60% on financial reports.
What started as a simple Prisma upgrade became a deep dive into Docker architecture, WebAssembly file handling, and TypeScript path resolution. Here's our complete journey from 7.2.0 to 7.5.0.