SEARCH KEYWORD -- Java native interface
ConcurrentHashMap vs Collections.synchronizedMap()
ConcurrentHashMap and Collections.synchronizedMap() both provide thread-safe operations of collections of data. They are used in multithreaded programs to provide both thread safety and performance improvements. In many cases, we can use either of them. But the realization of thread safety is different for these two implementations. ConcurrentHashMap will create an HashEntry[] array internally to store the elements passed in from a Map, while Collections.synchronizedMap() will return a Synchroni...
ConcurrentHashMap,Collections.synchronizedMap 2014-09-18 05:04:59
NIO vs IO in Java
Java 1.4 provides a new API for handling IO -- NIO. This is a non-blocking and buffer oriented IO API. Below are main differences between the NIO and IO in Java. IO NIO Stream oriented Buffer oriented Blocking IO Non-blocking IO N/A Using selector Stream oriented vs Buffer oriented The main difference is that IO is stream oriented where the data is read byte by byte and the data will not be buffered normally.This means there is no pointer to move forward and backward in the stream. I...
Why I Still Use Emacs
At school, I’m known as the Emacs guy; when people have questions about configuring Emacs or making it work a certain way, they often come and ask me. Sometimes, some people ask me why use Emacs at all? Isn’t it a really old editor and aren’t Eclipse or Visual Studio much better? I mean, they don’t have weird key bindings and have intellisense, that’s surely better for a programmer, right? I will attempt in this post to explain some of the reasons why I still c...
When will resizing be triggered in Java HashMap?
HashMap is one of the most frequently used collection types in Java, it stores key-value pairs. Ideally it expects to use hash table which expects the data access time complexity to be O(1), however, due to hash conflicts, in reality, it uses linked list or red-black tree to store data which makes the worst case time complexity to be O(logn). Although collections are using data structures like arrays and linked lists, unlike arrays, they will dynamically resize when there is not enough spa...
10 reasons why Dart is cooler than JavaScript
Dart is a new programming language from Google and after coding JavaScript for over one year now, I immediately felt in love with it. Coming from the Java world I had a good bunch of things I had to learn before I could use JavaScript. Some people say, you need to dig deep into JavaScript, otherwise you are not allowed to speak about the pros and cons of a language. I am not a JavaScript Ninja. But I strongly believe a programming language should be easy to learn, easy to understand and s...
Dart,JavaScript,Comparison 2012-01-05 08:23:21
About tmpfs
tmpfs is another confusing name in Linux kernel, its implementation is in mm/shmem.c, shmem has no relation to tmpfs at first glance although we know tmpfs is based on memory. We can understand why we use this name by seeing where this is used. In a desktop Linux system, tmpfs is loaded usually: % grep tmpfs /proc/mountsdevtmpfs /dev devtmpfs rw,seclabel,nosuid,relatime,size=1958956k,nr_inodes=489739,mode=755 0 0tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev,relatime 0 0tmpfs /run tmpfs rw,seclab...
tmpfs,Linux,file system 2013-06-14 12:10:56
Are older people better programmers?
Peter Knego states something interesting: “It's official: developers get better with age. And scarcer.â€. He uses reputation and other metrics from StackOverflow to corroborate his point. His summary is: Number of coders drops significantly with age. Top developer numbers, at age 27, drop by half every 6-7 years.Developers in their 40s answer roughly twice as much and ask half the questions compared to colleagues in their 20s. It seems younger generation learns and older generatio...
Programming,Age,Experience,Skill,Advanta 2011-07-28 09:02:23
One interesting story about Chinese software development
I have once seen an interesting complaint written by one foreigner about Beijing South Railway Station (China) on foursquare. It says: "There is simply no way to buy a ticket at the machine unless you have a Chinese ID. What the hell they have English interface for then?" Apparently,the foreigner cannot buy ticket because he doesn’t have Chinese ID but there still presents an English interface for foreigners on the vending machine. Because of my profession, I find this awkward situation w...
Software design,User experience,Importance 2012-03-26 14:42:50
Only fast languages are interesting
If this isn’t a Zawinski quote, it should be. I have avoided the JVM my entire life. I am presently confronted with problems which fit in the JVM; JVM libraries, concurrency, giant data: all that good stuff. Rather than doing something insane like learning Java, I figured I’d learn me some Clojure. Why not? It’s got everything I need: JVM guts, lispy goodness; what is not to love? Well, as it turns out, one enormous, gaping lacuna is Clojure’s numerics performanc...
Fast language,Clojure,Perl,JVM SLOW,Lush 2011-11-30 11:16:01
Implementation of +,-,*,/ with bitwise operator
There is a question asked on Stackoverflow : Divide a number by 3 without using *,/,+,-,% operators. This question is an Oracle interview question. Some people give excellent answers. You can go there and take a look. Usually we need to use bitwise operators to do this kind of implementations. Here I want to show you ways to implement +,-,*,/ with bitwise operators. A bitwise operation operates on one or more bit patterns or binary numerals at the level of their individual bits. It is a fast, pr...
Bitwise operator,Shift,Add,Subtract,Multiplication,Division 2012-08-05 01:52:47
RECENT
- The Most Popular Car Color
- Exploring Open edX: A Global Platform for Online Education
- What Is The Best SaaS CRM In 2024?
- Common Pitfalls When Handling JSON in Golang
- Streamlining the Project Invoicing Process: Tools and Strategies
- Performance comparison of string concatenation in Go language
- Why init() is not recommended in Go
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- more>>