SEARCH KEYWORD -- PSEUDO RANDOM
Optimization Tricks used by the Lockless Memory Allocator
With the releasing of the Lockless Memory Allocator under the GPL version 3.0 license, we can now discuss more of the optimization tricks used inside it. Many of these are things you wouldn't want to use in normal code. However, when speed is the ultimate goal, sometimes we need to break a few rules and use code that is a little sneaky.The SlabA slab is a well-known technique for allocating fixed size objects. For a given object size, a chunk of memory is divided up into smaller regions of that ...
Optimization,Memory allocation 2011-11-16 08:02:16
File System vs Core Data: the image cache test
Code for this project is on GitHub While doing a full re-write of Droplr's iOS app for the 2.0 launch, I couldn't find any good file/image caches out there had a particular feature I really wanted: extending item expiration whenever it's touched. I set out to write my own — which wasn't that much of a challenge — but somewhere along the process I had this crazy idea that perhaps (SQLite-backed) Core Data would be a much better tool for the job: No mismatch between cache index ...
File system.Image cache,Multimedia 2012-02-01 08:52:02
A turing machine in 133 bytes of javascript
Multiply turing machine The fact it took me 20 lines of javascript to implement a nondeterministic turing machine simulatorlast week kept me up at night. All weekend. Too much code for something so simple and I kept having this gut feeling implementing a basic version shouldn’t take more than 140 bytes. Sunday afternoon I sat down for about an ...
Turing machine,JavaScript,Simple code 2011-11-28 09:27:28
Java Cipher encryption/decryption example
In Java, Cipher is the API for doing data encryption/decryption. Many cryptographic algorithms such as AES, DES, RC4 etc can be specified when creating Cipher instance. The Cipher instance calls the underlying algorithm specific implementation to do the actual encryption/decryption. Before doing the encryption/decryption, a key needs to be created and it will be used to do the encryption/decryption. A sample program for performing all these is : import java.security.Key; import javax.cryp...
Java, Java Security, Cipher, Example, Sample 2015-08-14 07:07:10
About short URL and its implementation
IntroductionURL shortening is a kind of technique to convert a long URL to a short URL. There are many companies now providing this kind of service, we now take Google's URL shortener service http://goo.gl/ as an example.First we navigate to http://goo.gl/, then we enter a random URL into the text field, here we use http://www.url-to-be-shortened.com as the input, it will return us an shortened URL : http://goo.gl/ZSVMM. URL ParsingWhen we type http://goo.gl/ZSVMM in browser address bar, the DNS...
Redis Cluster and Common Partition Techniques in Distributed Cache
In this post, I will discuss a few common partition techniques in distributed cache. Especially, I will elaborate on my understanding on the use of Redis Cluster. Please understand that at the time of writing, the latest version of Redis is 4.0.10. Many articles on the same topic have a different idea from this post. This is mainly because, those articles are probably outdated. In particular, they may refer to the Redis Cluster implementation in Redis 3. Redis Cluster has been improved...
REDIS,DISTRIBUTED CACHE,CLOUD COMPUTING 2019-01-17 08:10:37
The Book That Every Programmer Should Read
No, it’s not Knuth’s “The Art of Programmingâ€. I’m talking about quite an easy-to-read (compared to TAoP) book, which, in fact, does not require any engineering or mathematical background from the reader.I am talking about C. Petzold’s “CODEâ€. It is a truly remarkable book about how computers work. Let me explain why I think this book is so awesome.The book starts from the very beginning, from explaining what code is, bringi...
Programmer,Book,Must read,CODE,C. Petzold 2011-10-31 10:43:58
CSS3 animated dropdown menu
It’s a sure thing that CSS3 features like transitions, animations and transforms can add extra spice to your designs.In this article you will see how you can build an awesome CSS3 animated dropdown menu with some of these cool features.View demoHere’s a quick preview for the CSS3 animated dropdown menu that we’re going to create today:Remember the previous CSS3 dropdown menu? That menu is awesome, and thanks to you is the most popular tutorial around here (at this time)...
CSS3,Drop down menu,Animation,Animated menu 2011-11-15 12:47:05
The biggest iOS 5 bug you've never heard of
There is a huge bug when Group Messaging is disabled in iOS 5. I'm shocked Apple hasn't fixed this yet. Today a friend sent out a text message blast, announcing they got a new phone number. Shortly after, I got text messages from three random people I don't know. I was confused how these people got my number, but then I realized they were replies intended for my friend who sent out the text blast. If you've ever used the Group Messaging feature,...
iOS5,Bug,Group Messaging 2011-12-10 06:04:39
Useful Bash Scripts
Many people hack together shell scripts quickly to do simple tasks, but these soon take on a life of their own. Unfortunately shell scripts are full of subtle effects which result in scripts failing in unusual ways. It's possible to write scripts which minimise these problems. In this article, I explain several techniques for writing robust bash scripts. Use set -u ...
RECENT
- Fix Surface Keyboard not Working Issue
- Python Process Protection Watchdog
- The Strange Behavior of the void Type in TypeScript
- MySQL Index Merge Optimization Practices
- Applying Large Language Models (LLMs) to Solve Cybersecurity Questions
- Everyone Can Write Tech Blogs
- Python SSH Connection Tools
- Revolutionize Your Event Planning with Interactive Presentation Templates
- New Unreal Engine 5 and Nvidia Technology in Black Myth: Wukong
- 10-32 rack screws
- more>>