Java 10 HotSpot Disassembly on macOS High Sierra

Printing Generated Assembly Code From The Hotspot JIT Compiler documented back in 2013 how to view Java Hotspot generated assembly code. While still useful, the disassembler plugin referenced in the post is no longer available in binary form as the Kenai project has been decommissioned. A number of references are available on how to build the… Continue reading Java 10 HotSpot Disassembly on macOS High Sierra

The Cost of Contention

Martin Thompson first reported on the cost of contention using a simple benchmark that measures the time to increment a 64-bit counter 500 million times using various strategies. Results were reported here (section 3.1) and here (Managing Contention vs. Doing Real Work). I re-implemented this benchmark here. https://gist.github.com/nikolaybotevb/bc8cc1cdfa2f7cc212a915c487771d53 The results I observed (running on Java 9… Continue reading The Cost of Contention

Cloud Storage Costs

Overview Recently I did a survey of cloud storage options and their costs. My focus was to find the cheapest, scalable storage solution that I can use with minimal cost to begin with. If you are starting a new mobile app project, without any seed funding, the best choices are still Google Cloud Datastore and… Continue reading Cloud Storage Costs

Legacy

A couple of days ago, while planning a vacation trip with my girlfriend and contemplating spending some time on Christmas Island en route back from New Zealand, I stumbled upon these photos of the hydrogen bomb explosions, which were conducted off of the island in the late 50s. Seeing these photos stirred something very deep… Continue reading Legacy

Published
Categorized as Personal

Product Management

As a Staff-level Software Engineer, this post by Joel Spolsky best describes my standard of excellence for Product Managers – mostly in terms of the degree of attention to detail and technical aptitude that I would expect from a self-respecting, ambitious Product Manager. Even though Joel is talking about his experience as a Program Manager at Microsoft, most… Continue reading Product Management

The Software Business

I was reminded today of a quote by Bill Gates I had read 6 years ago in then-Sun Microsystem’s just-ex-CEO, Jonathan Schwartz. Here it is: The software business [is] all about building variable revenue streams from a fixed engineering cost base This is from Schwartz’s Good Artists Copy, Great Artists Steal post, which is also very informative about how Software Patents… Continue reading The Software Business

Acting Classes in Los Angeles

I finally went over my notes today and pulled out all the Los Angeles Acting class recommendations we got from Deb Fink at her Audition Workshop in the SF Acting Academy last year. Here is what I uncovered. Groundlings and Upright Citizens Brigade – Improv and Sketch Comedy in Fairfax / Hollywood. Beverly Hills Playhouse – acting classes for… Continue reading Acting Classes in Los Angeles

Published
Categorized as Actors

WordPress on AWS

Introduction I had been running my WordPress blog on a shared hosting account at a shared hosting provider for a while now, when about a month ago I decided to consider alternative solutions. In particular, I wanted to see if I can lower the cost of running my site. Here was my starting point: Web Hosting from shared… Continue reading WordPress on AWS

On Presence

Every time we hit a wall in training it is because we stopped being present. One can be performing an activity better than 99.9% of the world population and still be completely asleep while doing so. As long as presence is maintained there is no limit to how far we can extend ourselves in any endeavor. It… Continue reading On Presence

Trance

Ali Saif describes a state of mind, which has been predominant in my life, so well in The Plunge and Surface: “The sharp awareness of the present-moment and spontaneity of emotional response is lost, made sluggish rather. I often find I smile at something a microsecond too late and then remain smiling while others have… Continue reading Trance

Random Thought

Here are some tips and hints for success. Keep code reviews short; Follow style guides to the letter.

Dart vs Java (cont'd) — Richards and Tracer

This week I managed to port the rest of Dart’s benchmark_harness examples to Java. The experience of porting Richards and Tracer was as smooth as that of porting the DeltaBlue benchmark. The only unfamiliar (and interesting) Dart feature I encountered that is worth noting was the ability to declare and pass method parameters by name.… Continue reading Dart vs Java (cont'd) — Richards and Tracer

Dart vs Java — the DeltaBlue Benchmark

As of the time of this writing the performance page on dartlang.org tracks Dart VM performance as measured by the DeltaBlue benchmark. I ported the benchmark_harness Dart package (including the DeltaBlue benchmark) into Java and ran against the latest Java 7 and 8 JDKs. The experience of translating Dart to Java was surprisingly smooth. Some… Continue reading Dart vs Java — the DeltaBlue Benchmark

The History of Many-core

When looking for a good reference to back the “many-core problem” assertion in my Master’s thesis, this the best I could find as a prime source. Multicore: Fallout of a Hardware Revolution holds an excellent description of the reasons behind the shift from increasing clock speeds to multiplying the numbers of cores in modern CPUs. In… Continue reading The History of Many-core

Value Objects in Newspeak

This is a quick dump of a rough design sketch for Value objects in Newspeak, which builds upon section 3.1.1 of the current version of the Newspeak language specification. Value classes allow explicit intent. The class declaration is automatically annotated with metadata that expresses the intent for instances to be value objects. Value classes use… Continue reading Value Objects in Newspeak

References and Actors

In E, references are distinct from the objects they designate. This might seem apparent, but it is not necessarily so. In traditional languages like Java, first-class references are almost indistinguishable from the objects they designate. They are internally represented as 4- to 8-byte pointers and while there is a distinction between reference equality (two references… Continue reading References and Actors

On Openness

I am a firm believer in openness. That is the reason I believe open source has such great value. The way I see it, the word open in “open source” does not just refer to the source code: it also means open communication, open structure, open management… openness in every aspect of a project. Yet,… Continue reading On Openness