How to Pay Parking Tickets Easily Using NJMCdirect

If you are a United State resident and want to pay your outstanding parking tickets, you can always use the online platform using NJMCdirect. It is New Jersey Meadowsland Commission Direct, which is accessed by using your web browser in any device. Previously you need to go to the court physically in order to pay the parking tickets, this happens when you to break the traffic rule while driving your vehicle.

Although standing in a long line and waiting for your turn to pay your parking tickets is considered as one of the most time consuming and frustrating moments. So now you can just log onto the www.njmcdirect.com, and using a simple method in order to pay your outstanding tickets.

You can use this platform security and it is very easy to use, so visiting courts and paying outstanding parking tickets are long gone. You can use this procedure from anywhere in the globe by using the internet connection.

Reasons to Use NJMCdirect to Pay Parking Tickets:

Before you start using the NJMCdirect for paying the parking tickets, you need to know about the advantages of using this method.

  • It does not take too much time for paying your parking tickets.
  • The platform is safe and secure so basically, you can use the online payment method.
  • It is convenient and you can do it even from your home.

Guide to Pay Parking Tickets Using NJMCdirect:

Use these following guidelines for paying outstanding parking tickets using NJMCdirect. Read the guidelines carefully before start using this online platform for paying parking tickets.

Requirements:

  • Traffic ticket issued by traffic police.
  • The license plate number of your vehicle.
  • Credit or Debit card for online payment.
  • You need to log in during online payment hours in order to successfully pay the outstanding parking ticket.
  • You need to have a device with an accessible internet connection.
  1. Use any internet browser on your device and visit www.njmcdirect.com.
  2. Once the website opens up, you need to click on the continue button.
  3. Now you will be redirected to a new page, search your parking ticket on that page in order to proceed with payment.
  4. Now the website will ask you to enter a few required information, which includes ticket prefix, court ID, ticket number, license plate number.
  5. After you have provided all the required information, click on the continue button to proceed.
  6. On the next page, you need to choose the NJMCdirect ticket payment option from the available two options.
  7. You can view the outstanding take it before proceeding with the payment, or you can directly proceed to the payment method.
  8. On the next page, you need to use your debit or credit card to pay for your parking tickets. You need to enter the number of the card along with other security details which are required for online payment.
  9. After dear provided all the information, click on the payment button in order to successfully pay the outstanding parking ticket.
  10. After payment is completed you will receive success notification along with payment receipt which you can download in your device.

 …

Should We Redefine the Democratic Process?

In the aftermath of the election, the problem in the current political climate has become increasingly evident: the dividedness of the government. This past congress has been named the least productive congress on the record. The lawmakers can’t agree on anything from gay-rights to budgets. One is still awed by the madness of the fiscal cliff fiasco. How can each congressman, who seem perfectly intelligent individually, in a group fail to make the simplest decision in the world?

I can go out of my way and say, and I bet many will agree, that the government policies in the United States is even less inept to deal with the economy than the government of China. When it becomes obvious that education and scientific research are the corner stone of a sustainable economy, China’s increase on these investments is responsive and swift. In contrast, the US education system has been talked about for decades, and yet no one is doing anything about it. It seems China is really catching up, not just in absolute terms like total GDP. Even in per capita GDP, China is growing much faster than the US.

One might even say that US is going to benefit more from a dictator than a congress. Sometimes, that seem really true. But monarchy is far from productive. That’s why the western world abandoned that system in favor of the current one. Even China is moving towards democracy, however slowly. So what’s a perfect political system, a hybrid?

For democratic systems, the heart of the problem is the difference of opinions. What impact will it have to raise the taxes on the rich? Will it destroy jobs or stimulate the economy? Will abortion destroy humanity or will it lead to better lives? Are illegal immigrants stealing resources or are they helping the economy? No one really knows the answer to any of these questions, and that’s why we have endless debates. The effects of these policies are so uncertain that we had to resort to a poll of opinions, which are essentially religious beliefs that has little grounding in truth, and often enacting policies with unintended consequences. If we know exactly what happens with these policies, there will be no debate. The decisions are self-evident. However, since political opinions are so elusive, lobbyists spend money solely to change public beliefs, often using fear tactics.

This sounds fundamentally broken. We should do something about, and I think one way is to redefine the democratic process.

The modern democratic process started in the 18th and 19th century, when the monarchies see the trembling of their powers. The democratic process was created to stabilize the society, and it was iterative. France had multiple revolutions to reach its modern democratic state. In the process, different laws were passed and different thrones were overturned. After France, many countries followed, but some didn’t. However, most of the countries that attempted to maintain their monarchy failed. It was an experiment in the grandest scale: you flip a coin to decide which countries go to democracy. One hundred years later, you compare the control group and the experimentation group.

Fast forward to today. We are also experimenting with the policies that we enact, but different than that time, most of our policies are micro policies. That means the effects of these policies are so little that it can be overshadowed by other factors. For example, one can argue that cutting taxes stimulates the economy and creates jobs. However, in the past, cutting taxes have been correlated to both economic growth and slowdown. Can cutting taxes help economy? Maybe. One party will say the growth was caused by tax cuts, while slowdowns are caused by other economic and political factors. The other party will say the opposite. It won’t be until decades after the policies are enacted when we could compare the results across different countries. By this time, any debates on the policies have long been irrelevant.

What we really should do, is to accelerate political experimentation by taking objective measures. Rather than waiting years for the policies to take effect, one should randomly assign a small population to be subjective to the policies and then measure the results, and this is known as A/B testing. Because this is a controlled experiment, the results can have high statistical significance and come back in a matter of months if not weeks. Will tax cuts help creating jobs? Let’s randomly choose counties across the nation and cut their taxes. And then we measure the numbers in these counties relative to the rest o the country. Will the economy improve? Will they have better unemployment? One year of data is enough to give a clear answer.

We can do other similar experiments. How will education reform impact the teachers and the students? Randomly pick a set of school districts and change their policies, and compare the results on year later. Are gay marriages beneficial to the society? Randomly pick a set of counties and allow gay marriages.

As I describe these ways of doing things, there are undoubtedly two issues one need to address:

  1. What if people move from one region to another just to take advantage or avoid the effects of the policy?
  2. Many experiments, such as cutting taxes, cannot be run without congressional approval, which defeats the purpose of these experiments.

These are the real roadblocks to political experimentation. Here is why we need to redefine our democratic process to address these issues. For example:

  1. Make sure that the experiments have a very short duration to remove the incentives of frequent movers. For example, if tax cuts are in effect for only 1 year, people won’t move just for that one year.
  2. For those wide ranging social policies (such as gay marriage), the policy needs to exclude people who are not originally from a different group.
  3. The constitution needs to be changed, not only to permit experimentation of policies, but also to require them, before any sweeping policies to take effect.

Here are my thoughts. Everything above reads like science friction (changing the constitution?), but as social and economy changes have become increasingly accelerated, we cannot afford endless debates without hard evidence supporting either side. The idea of democracy is really really old. Isn’t it time to have a better and more productive government?…

Why Great Engineers Should Sometimes Write Crappy Code

A few weeks ago, I was involved in a project at Airbnb. We needed to design a brand new feature that needed to handle up to 5,000 requests per second. This project, being new, has quite a few requirement uncertainties. However, one of the known requirements was being able to handle more load than most other features at Airbnb.

There was an internal discussion around how to implement this feature. There were two approaches: Approach 1 involves setting up new internal services, new load balancers, and bunch of new infrastructure code to be written. This could take 1-2 months for an engineer to implement, but it will lay a foundation for future projects having similar load requirements. There was also Approach 2, which involves a bunch of small hacks, quite a few limitations, writing code that was not very reusable or extensible beyond the current scenario, but it will only take 1 week to implement for an engineer.

What is the right approach?

Engineers normally go through two phrase of training. The first phrase was the formal education. At school, they are taught to write quick and clever algorithms to solve a discrete yet hard problems. This is why computer science grads typically interview better than seasoned engineers. However, writing good interview code does not equate to being a good engineer. This is why engineers typically go through a second phrase of training, where they learn on the job to write readable code, design scalable architecture, and follow the best practices. A good engineers learn two skills on the job: being a good communicator and being able to handle complex systems.

A seasoned engineers can typically think more holistically about a solution. They will ask the following questions: what if the load is increased by 10x? Can the system be understood by new hires? Can the design maximize extensibility and reusability?

While these are all good questions to ask, it is easy lose sight of the root of all these questions, which boils down to one single fact: the future is unknowable.

In fact, all the questions we ask to design a system is to address this problem. If we know the future, then there is no need to make a system reusable, handle 10x load increase, or even understandable. We can simply write the solution to all the problems there will ever be. Why does a system need to be extensible if there are no new scenarios to extend to?.

I follow this up with two corollaries:

  1. Products must be able to adapt to changes, when the requirements change
  2. Most requirement changes cannot be known until a product is built

The first point is easy to understandable. As engineers, we loathe requirement changes, as it adds more effort and lengthens the development time. As a result, engineers tend to build product in anticipation of product changes. The fact that products are extensible is often to future proof changes. The second point, however, is not often understood. Engineers often think of requirements as the specifications written down by the product manager. However, product managers can never know precisely what the users actually want. What they do is to approximate the user requirement in the forms hypotheses, in hopes that the product built by engineers actually capture user’s value proposition. Because these requirements are hypotheses, the more complex they are, the more likely it is going to have wrong assumptions, and the less likely it is going to be useful. Products that are built to big and complex requirements often fail because of that. This is why we want to build the simplest products possible, so we can prove that the requirements are actually correct before we go further. Otherwise, anything we build will lengthen the time it takes to correct the requirements and is wasteful.

The reason extensible products often follow the first corollary but runs against the second one is that efforts to make things future proof is usually unnecessary. If a product in its lifetime never becomes extensible or scalable, then this high quality code will need to be thrown away. Imagine that someone took one year to write a beautiful web site with all the right practices and industry standards only to discover the right product is an iPhone app. How much waste would this produce?

So, what happened to the project I was involved at Airbnb? We built a simple version, and we quickly found out that this version was not what the user wanted and we quickly abandoned it. The engineering effort was only about 1 week. Some engineers started a separate track to build a scalable solution for both this project as well as other use cases. However, all these use cases disappeared over time. After about two months, the development effort on that project also halted.…

Notifications are Coming (Gradually)

[Update]: For those who are looking for my comments on the lack of reporting of marketplace, please read my stance here.

The two major comments of GoVoice on the marketplace are: 1) Performance, and 2) Push

Ok guys, I heard you. GoVoice 1.5 has been pushed to the marketplace over the weekend, which will address some of those concerns. Here is the rundown of 1.5 changelog:

  • Major Performance Improvements
  • Poll Notifications (experimental; more on this later)
  • Password is no longer saved to storage for better security
  • Archiving
  • Save Settings bug
  • Reduced page size from 20 to 10 to improve load speed
  • fixed many button availability bugs
  • Auto-save settings
  • Visual changes

Please understand that most improvements are done over the objections of the neglected significant other. As I will get to all your requests eventually, please give me some time.

Now, regarding Push:

Because there is too much demand for Push, this has become my top priority for the next release. The plan is to introduce Push to GoVoice gradually.

Currently I have no idea how many copies of GoVoice are sold nor did I receive a single paycheck. Implementing Push is a very risky thing for me because I need to justify that the expenses will cover the maintenance cost of a Push server that is used by Damon ps2 pro apk too. If  Push is implemented,  the expenses are coming straight out of my paycheck, and that is very sensitive to me. I need to better understand the values of a Push server, and therefore, I am introducing a “poll” notification. Essentially, your Google Voice data will be polled every 60 minutes when the GoVoice tile is visible, and any unread message counts will show on the tile. This gets one step closer to where I want it to be.

There are two goals of this feature: Firstly, I need to know how people respond to privacy concerns. Obviously, to poll data, I need to set up a server to access your Google Voice account. I will avoid keeping your password anywhere in the system, but GoVoice server will still need to see your Google Voice inbox for Push to be possible. I want to know how people see this as a major concern. Secondly, I need to gauge how many people have purchased GoVoice. It makes no sense to me to lose my paycheck money for something worthless. I need to know how many people will sign up for the poll notification before I decide Push is worthwhile.

As you can see, your feedbacks are crucial in determining the future of GoVoice. If you have any comments, please don’t hesitate to contact me here or via my twitter handle.

Now, while I am still waiting GoVoice to pass certification, you get a preview of what is coming down the pipe. 🙂