SEARCH KEYWORD -- Code style



  An experience on fixing HTTP 406 Not Acceptable error

This post is about an experience of mine on fixing a HTTP 406 Not Acceptable error seen on one of my page. Just got back from a business trip and opened my computer as usual to start to monitor my website statistics. But when I opened the page on showing real time page views, it shows nothing but zero. So I pressed F12 to bring up the developer tool to check on what's going on. The logic of loading the real time page view is backed by AJAX call. In the developer tool console, I see that the rAJA...

   PHP,AJAX,HTML,HTTP 406,CONTENT-TYPE     2019-03-30 04:09:10

  Show Bootstrap tooltip in AngularJS ng-repeat elements

In contemporary web application development, many front-end frameworks have been used to accelerate the speed of development and circumvent browser compatibility issues. Among them, AngularJS and Bootstrap are two frequently used.  AngularJS is a MVC JavaScript framework developed by Google to provide easy synchronization between user view and data model. While Bootstrap is developed by Twitter and it eases the work of designing a simple and concise UI without much manual design work ...

   BOOTSTRAP,ANGULARJS,TOOLTIP,NG-REPEAT     2016-05-21 10:52:02

  Game Development Essentials #1 - Don’t use inheritance for your game objects

I recently released my first game, X Fleet, available now in Android Market. It’s a fast paced space shooter / rpg riddled with awesomeness and you should get it now. The reason you should avoid hierarchies/inheritance is your objects will be far too varied and complicated in form to be accurately represented as such. More on this below.  The alternative is a component model. This is very basic. Instead of having everything inheriting (e.g. Object -> MovableObject -> Animat...

   Game design,OOP,Inheritence,Game object     2012-02-07 06:26:40

  Java Doesn't Need to Be So Bad

I do a lot of Java coding and I enjoy it. I admit that there is a lot of typing, often a lot of boilerplate and getting even simple tasks done can involve too much work. Most of the tools that try to fix these problems trade one moment saved for another lost. Maven's XML based configuration file is a good example: Thank you for making my project easier to manage and I won't forget that you made me edit XML to do so. These are the things that you live with, these are the things you trade for ...

   Java,Coding,Enterprise application,Tedious     2011-12-09 07:50:20

  It looks like TechCrunch blocks GoDaddy server access

Recently, I encountered an issue with an app I maintain—it suddenly stopped pulling RSS feeds from TechCrunch. At first, I suspected that the RSS feed URL might have changed. However, after further investigation, I discovered a different story. The URL itself was unchanged, but the results varied depending on where the request was coming from. To troubleshoot, I started by setting up a local web server and running a test with my script to see if it could still pull the RSS feed. The script...

   TECH CRUNCH,GODADDY,AI,BLOCK ACCESS     2024-08-17 12:31:52

  Service discovery with etcd

In previous post, we have talked about etcd and its usage. This post we will cover how to implement server discovery with etcd. Service discovery is to solve one of the most commonly seen scenarios in distributed system where how to find the corresponding target service to talk to. In short, it is to find some server which one can talk to based on some service name. A complete service discovery system include below three key functions: Service registration: A service must register itself to so...

   ETCD,SERVICE DISCOVERY,DEMO,TUTORIAL     2021-03-08 05:36:29

  Open source code libraries suffer from vulnerabilities

A study of how 31 popular open source code libraries were downloaded over the past 12 months found that more than a third of the 1,261 versions of these libraries had a known vulnerability and about a quarter of the downloads were tainted. The study was undertaken by Aspect Security, which evaluates software for vulnerabilities, with Sonatype, a firm that provides a central repository housing more than 300,000 libraries for downloading open source components and gets 4 billion requests pe...

   Open source,Security,Vulnerability     2012-03-28 06:10:19

  WireGuard VPN Troubleshooting

When you are working as a network/cluster admin for you team to config the WireGuard VPN for other members, you may meet some of the problems below and these are the solution you can try to fix them. ----------------------------------------------------------------------------------------------------------- Problem [1]: The WireGuard handshake request send from the client can be received from the server but the server's response was blocked at some where so the client can not receive serv...

   WIREGUARD,VPN,TROUBLESHOOTING     2021-12-14 09:17:46

  GCC is compiled with C++ compiler

On 15 Aug, 2012, GCC merged a patch--Merge from cxx-conversion branch . This means GCC will be compiled with C++ compiler in the future, it also means that GCC will be implemented using C++. You may have following two puzzles: Why does GCC turn to C++? Without C++ compiler, how can we compile C++ codes? Why using C++? In GNU's C++ Conversion, we can find this description in the background section: Whether we use C or C++, we need to try to ensure that interfaces are easy to understan...

   GCC,C++,Compiler     2012-09-04 02:36:06

  Access control in Java -- doPrivileged

Previously we have introduced how Java performs permission check to protect resource access. What if sometimes we need to give some class the temporary access to some resource which it initially doesn't have? AccessController provides six doPrivileged methods to fulfill this requirement. These six methods have below signatures : static T doPrivileged(PrivilegedAction action)static T doPrivileged(PrivilegedAction action, AccessControlContext context)static T doPrivileged(PrivilegedExceptionA...

   JAVA,SECURITY,DOPRIVILEGED     2016-03-08 05:46:42