Tuesday, September 22, 2015

Simple Remote control with HTTPLauncher

As a system engineer, the ability to remotely control computers has always been high on my priority list, and even though there are plenty of solutions on the market, they are all pretty complicated to use, or too cumbersome. They typically involve installing a dedicated client, and even those that are built-in windows like Remote Desktop are not ideal since they are not designed for automation.

I’ve finally decided to design a solution of my own for this – HTTPLauncher. It’s fairly limited, but it’s very easy to use, simple to install (just copy it to the target machine, and run it!) and very light at 71 KB.

Other than remote controlling a computer, this tool can also be integrated with other stuff, like Arm Suwarnaratana’s Home-automation bridge, and this integration allows you to perform tasks on the computer by issuing voice-commands to Amazon’s Echo device (Alexa). I’ll talk more about that in a later post.

Here’s how HTTPLauncher works:

1. You copy the executable and configuration file to a computer that you want to control.

2. You run it

3. On another computer (which could be ANY device that has a browser, including any Smartphone on the market), you type a URL into the browser, with a command embedded in the URL.

4. The target computer executes the command as-is

The command you put in the URL can be any standard Windows command, like you would type into the Start/Run dialog. This could be launching an application, running a script, and pretty much anything you like.

Naturally, this kind of thing can be VERY dangerous if some hacker gets into your network, so I also embedded some security measures:

1. The command has to have an authentication token. The default token is 39ed173-b77a-5e41-812d-7be9e992f920, and you can change it by editing the configuration file that comes with the application.

2. The launcher will reject commands that match one of the words in the Black List (for example, Format, Del, Delete). You can edit and expand the list to your liking.

3. The launcher has a delay of 3 seconds (configurable) between executing commands, so trying to brute-force the authentication token would take forever.

4. The launcher limits the command length to 120 characters (configurable), so that even if the password is somehow broken, it limits the things the attacker can do remotely.

The syntax for issuing a command is:

http://<target IP or hostname>:<target port>/<token><Command>

The default port is 8008, and you can change it in the configuration file, alongside the other stuff I mentioned earlier. The command comes right after the token, without any separators and delimiters. For example:

http://ErezBedroomPC:8008/39ed173-b77a-5e41-812d-7be9e992f920c:\program files\skype\skype.exe

As you can guess, this launches Skype on the remote computer. Note that you need to specify the FULL path to the executable! Similarly, you can close the program remotely, though that’s a little more complicated. Programs don’t normally accept a command to exit, but you can do this by using the system’s TaskKill utility, which is built-into windows. To use it, you would issue a command like this:

http://ErezBedroomPC:8008/39ed173-b77a-5e41-812d-7be9e992f920c:\Windows\System32\taskkill.exe /f /im skype.exe

When you run this, the browser will convert the spaces to %20, but that’s OK – the Launcher will be able to understand it, and it will also convert back-slashes to forward slashes. You can also use it to execute commands that aren’t executable by launching them with a CMD. Keep in mind to specify the full path to the command prompt. For example:

http://ErezBedroomPC:8008/39ed173-b77a-5e41-812d-7be9e992f920c:\windows\system32\cmd.exe /c dir "c:\temp" >c:\documents\FileList.txt

Note that I’m using /c as a parameter for CMD, so that it closes after it executes the command. You can use /K instead to leave the window open if you’re having trouble for debugging purposes. You can also examine the log created by the launcher to see what it did, and if it ran into errors.

Finally, keep in mind that these commands can be launched from anywhere! While the server-side (the launcher itself) is for Windows computers, the web requests that run the command can be launched on ANY browser that’s connected to the same network. For example, you can save the URL URL http://ErezBedroomPC:8008/39ed173-b77a-5e41-812d-7be9e992f920c:\Windows\System32\shutdown.exe -s -t 1 as a bookmark on your phone, and just visit it to tell your computer to shutdown. In fact, If you dare publish the target computer through your router to the public internet, then you can even do these things remotely from anywhere in the world, without installing any other special software (to be clear…the security measures on the launcher are, in my opinion as a cryptography engineer (***), NOT sufficient for a public-facing remote-control tool…so I do NOT encourage, condone or support doing this!).

Hope you like the tool!

*** I’m also working on a more business-oriented version of this engine, which will support more advanced security options, like HTTPS connections, White-listing commands, White-listing remote IPs, Hashed password, Central config file and more. Once it’s ready, I’ll release it and details on the blog. If you have ideas for other security measures or features, please drop me a line.

Tuesday, August 25, 2015

Citizenship be gone

About 7 years ago, my wife and I won the American green-card lottery and moved to the USA. 5 years later, per the standard waiting period, we received American Citizenship as well. Even before that, it was pretty clear to us that once we become American citizens, we will want to renounce our Israeli Citizenship, and a few days ago, we completed that process. I’m sharing my experience here for the benefit of those who want to do it as well.


Several of our friends and relatives were surprised to hear that we were doing this. Some even took it as some kind of betrayal. Well, everyone has the right to have an opinion, but the main issue is due to the fact that an Israeli Citizen cannot travel out of Israeli without a valid passport. This leads to a string of administrative work that can end up badly in several ways. Here are some of them:

1. That’s 3 extra passports to keep track-of and renew every few years

2. Any travel to Israeli requires carrying a double stack of passports – double the space, double the stuff to safeguard.

3. Common strikes at either the ministry of interior and ministry of foreign affairs jeopardizes the ability to renew passports on time. Example.

4. Spelling means trouble. For example, last year my wife was detained for 2 hours in Israel because our last name is “Benari” on American documents and “Ben-Ari” on Israeli ones.

However, the main reason we did this was the Israeli Army. As you know, being an Israeli citizen includes the mandatory army duty for my son. We would, of course, file the paperwork to dismiss him when he’s at the right age, but this can go wrong in various ways. For example, this horror story about such a mishap is a stark warning of what the “benefit” of citizenship can amount to, as well as this one.


Renouncing the citizenship is, in theory, only a matter of filing a form and paying the fee ($92), but in reality, there are some complexities.

1st, this is one of those asks that require the requestor to visit a consulate in person. For those living close to a consulate, like residents of Boston, LA, NY and other locations, this would not be a big deal. For those living farther, such as me (Seattle), this requires some planning and some major expense. We did a 2-day trip to San Francisco, so that if something didn’t work out on the 1st day, we could come back the next day.

If you were thinking of just taking care of this on your next visit to Israel, this is not actually possible. This sort of request can ONLY be filed abroad. There are over 100 consulate offices world-wide, so with any luck, you can just pick one at a nice destination and have a family-vacation at the same time.

Secondly, if you have children, this can make things more complicated. For kids under age 16, the parents would include the kid in the request. Israeli law requires that any citizen of Israel who has a kid born abroad registers the kid with the Israeli government (which grants the kid citizenship). While this isn’t strictly enforced, this might trip-up the process. If the ministry of internal affairs is aware of the child (***) the consulate staff might refuse to accept your application because you failed to register your child. If, like me, you had to spend hundreds of dollars to go to the consulate, you might want to avoid the risk and register your child before filing the application.

*** I don’t know what info or data the ministry collects regarding citizens, so this is more a case of paranoia than anything else. I suspect that the existence of a child can be flagged somewhere in their computers, and they might become aware of the kid if you travel to Israeli with him

Luckily, you can register the child on the same visit to the consulate. This can be tough, as the consulate requires that you show a birth certificate that has an apostille authentication. That’s not equivalent to the regular stamp or signature that birth certificate have, and would typically require you to specifically ask for it from your local Department of State office (this can take a couple of weeks to get).

By the way, you can download the various forms you need here.

Taking the trip

If getting to the consulate requires a special trip, don’t forget to prepare and take everything with you. You would need:

1. American passports

2. American certificate of citizenship

3. Israeli passports

4. Child’s birth certificate with Apostille authentication

5. Forms for registering the child

6. Forms for renouncing the citizenship for you and spouse, and any kids above 16 YO (no need for kids under 16)

7. Multiple payment forms. The consulate can take a credit card, but I’d advise to bring cash and checks as backup

8. If there has been any name changes in the family, bring supporting paperwork.

Some consulates are busier than others, so try to figure out what lines you’re expecting. Most people who go to the consulate take a while to finish their business, so even if there were only 4 people behind you, you can get stuck for an hour or more.

I would also advise filling up the forms ahead of time, so that you don’t end up missing info, or writing hastily and unclearly on them. I actually loaded the form into Word and filled the details in print, and also brought a few extra copies just in case I spilled coffee on them or something.


Spending time and money getting to the consulate only to find that something is missing or wrong can be very annoying. However, most consulate employees have a very good service attitude and can help work out stuff. For example, when I made my visit, my son’s birth certificate didn’t have an Apostille stamp, but the consulate staff allowed me to get a new one and send it to them via FedEx. This way I was able to complete the process without having to travel again. If you run into a hiccup, try to think positively, and work with the consulate staff with the “what would it take to do this” approach rather than getting angry and confrontational.

Another hiccup I ran into was that the ministry of internal affairs needed a proof of foreign citizenship for all 3 of us. We did give ours during filing, but the consulate forgot to get our son’s, so after 3 months of considering the request, the consulate contacted us and asked us to send over a passport copy for the kid. You can avoid this delay by making sure you’re giving the consulate all the paperwork they might need, if they fail to ask for some.

After the trip

Once the paperwork is filed by the consulate, the ministry of internal affairs needs to review and approve the request, and each request is personally signed by the Minister. This means that it takes about 2-3 months for this to go-through, and you will be notified by the consulate (not directly by the ministry) about the results. Assuming the request is approved, the consulate will call you personally and ask you to send them your passports and Israeli ID cards. Once they receive your passports and IDs, they will mail you back a document confirming your status. This last step can take another month. For us, the whole process from setting foot in the consulate to getting the final certificate took 5 months.

The document you receive will be a standard Israeli ministry of internal affairs blue paper, saying that your citizenship has been revoked, plus a second page showing any kids who were part of it. You will receive 2 copies per person, and they look like this:


As you can see, the document clearly states that you need to display this paper when entering or leaving Israel. It is unclear to me whether the border-patrol computers will ever be updated with my status. A relative of mine says he needs to show the paper every time, even though it’s been 30 years since his citizenship was revoked. Upon my next visits to Israel, I’ll update this if I have more information.

I want it back!

So what if, after a few years, you suddenly have a change of hearts and want your citizenship back? Well, I’m not familiar with anyone who has done this, so the following is speculation, but the law of return specifically says that any Jew has the right to receive an immigrant Visa, with the only exceptions being if the person has acted against the Jewish people, or is a danger to the public or the state. That means that if you ever change your mind, you should be able to go back to Israel, get citizenship and even receive the benefits of a returning resident (תושב חוזר). Whether the ministry of internal affairs recognizes your special circumstances and give you a hard time is anybody’s guess. I believe that they won’t, and even if they did, this wouldn’t prevent you from visiting, living and working in Israel. The law says that you would need to apply for a Visa for those things, but I’m being told that beyond border patrol, this is rarely actually enforced.

Thursday, July 2, 2015

Truth, justice and the American way

Last week I had the honor of serving on Jury Duty for the Seattle superior court. As I was preparing for this and participating, I was surprised to see how little info people actually have about this, so I decided to write it up for any future jurors.

The jury duty starts with a random selection done by the county. They have a computerized list of every resident of the county, and every period, they select a group of people from it. Only 18+ American Citizens who are residents of the county can participate, but the list the county has sometimes has errors (for example, my wife was selected for Jury a few years back, before we were citizens). If someone receives a jury summons while not meeting the criteria, they can and should respond to the summons via the mail, stating the error or issue. One can also ask to be excused if they are out of the country or have other reasonable excuse (no, you can’t ask to be excused because you’re busy watching the Tonight show).

On the day you are summoned for, you are asked to show up at 8am, which is quite early (I had to get up at 6:15 to make it on time), but on later days you can show up at 8:45. I live in Sammamish and the court is in Seattle, so that was quite a way off. The court recommends using public transportation, and so do I. While using my own car would be more comfortable, it wouldn’t actually save time as driving alone would get me stuck in traffic, and parking around the courthouse is limited and expensive. The courthouse is next to Pioneer square, so virtually every major bus line goes there and there are no less than 3 lines from my town directly to the court. I took the 6:40 bus and arrived at the court at 7:40.

At the courthouse, you have to go through security screening, so it’s best to make sure ahead of time not to bring anything problematic (like pocket knives) and to wear a belt that’s easy to remove. I was able to get them to use the wand-scanner instead, but only after a bit of argument. Then, it’s off to the Jury assembly hall, which is a fairly large place, lined up with chairs (soft and comfy ones!) for about 200 people, I estimate. There were plenty of available seats.

At 8:20, a court clerk began a presentation, which took about 30 minutes and included a movie outlining various principles of the law, and how a Jury works. I’ll detail some of this further down. After this, they started calling people for trials. The way this works is that the court has one or more trials each day, and for each, they need a certain number of jurors (typically 20-30). When they summon the Jury weeks before, they don’t know how many trials will be on the specific day, so it can go either way...some days only a handful of people are picked and the rest dismissed, and other days many or most of the people are used. Sometimes they even run out of jurors and have to pick more from the next day’s batch. While waiting, we were also asked to fill a form with some personal details like my place of birth, workplace and job (this would be used by the attorneys later if I get picked for a trial).

The court computer picks up random names of people from those who showed up, and the clerk calls them out. These selected then go up to the courthouse, and the rest continue waiting in the assembly room. As the day goes on, there might be more trials, and more rounds of calling people out. Once people have been called out for all the day’s trials, the remaining people are typically dismissed. On my day, there were only 3 trials and I didn’t get picked for any of them, so by noon, they dismissed me with several dozen others.

While waiting to be called, the assembly room is fairly nice and convenient. They keep a good temperature, they have a bunch of vending machines and a kitchenette I could use to put or prepare food. There’s also a water cooler and an “office”, which is a separate room with desks and power outlets, where people can work if they choose to. There’s also unlimited free WIFI access throughout the place. All in all, a pretty nice environment, and everyone is very nice and friendly. It’s clear that they really care about the well-being of the jurors and don’t take them for granted, even though it’s a mandatory service.

Jury duty is defined as mandatory 2 days, which means the process I described above continues to the next day. If you weren’t picked up on the 1st, you are supposed to show up the next day and as they court goes through trials that are scheduled for that day, you might get picked for one. If during the 2nd day you aren’t picked either, then you’re free to go. In my case this week, there weren’t any trials scheduled for the 2nd day, so all jurors that started their service with me and didn’t get picked were told that there’s no need to show up on the 2nd day and we’re done. Lucky us! We weren’t actually old this on the day, but rather through the court’s phone hotline and website, which is updated on a daily basis.

Since I wasn’t picked for any trials, the next section is a tad more vague, as it’s based on the info we were provided (and my understanding of it) and not my personal experience.

Once a group of Jurors is picked for a trial, they are sent upstairs to the courtroom where the trial is to be held. At that point, the judge assigned to the case instructs and guides the jury members about the case and the law related to it. This includes specifics about the case and the defendant, as well as meeting the lawyers representing both sides (defense and prosecution). The judge also provides an estimate of the trials length, and then gives each juror a chance to ask to be excused due to “undue hardship”. For example, if you have a planned trip that will collide with the trial, or if you have some business or family matter that will complicate your life significantly, you can ask to be excused. Then, it’s the lawyer’s turn to interview each of the jurors. This is to allow them to get rid of jurors who might have bias, or in other ways make the trial “unfair”. Essentially, lawyers use this to eliminate jurors that decrease their chance of winning, or lead to a more severe punishment. For example, if the defendant is accused of rape, and a certain juror has been raped in the past, she is more likely to treat the defendant harshly, and so the defense lawyer would prefer her to be excused.

During the interview process, each of the sides can excuse a juror for a “good” reason…or for any reason (meaning the real reason is uncool, embarrassing or otherwise better be left unsaid). The number of jurors that could be excused for “any” reason is limited, though, so as to not encourage too much of that. The number of people that can be dismissed for a good reason is not limited, so sometimes after both defense and prosecution are done, there aren’t enough jurors left and they have to call the jury assembly downstairs and ask for more people (this actually happened during my service – they initially had 90 jurors, but that wasn’t enough and so they called in 30 more). I’m not sure how they determine how many actually jurors are needed for each trial, but the panel actually includes one or more “standby” jurors, which can be called in in case one of the jurors needs to leave mid-trial for some reason. The common opinion is that defense lawyers usually excuse highly-educated people (especially those with legal education), as well as people with extensive trial experience. They also don’t like people who are pro-death-penalty and in general, anyone who is very assertive or strongly opinionated about anything (because these

Once the jury panel is finalized, the trial can begin, and once all the evidence and witnesses has been introduced, the Jurors’ go into the deliberation room, where they need to elect a “leader”, who steers the deliberations, finds info from the judge or lawyers when needed and ultimately also reads out the verdict. The deliberations might require the verdict to be either a majority decision, or unanimous, depending on the issue. Criminal cases typically require the decision to be unanimous, while civil stuff usually only requires a majority vote. Once a decision has been reached, the court re-convenes and the jury leader reads out the verdict. At that time, the jury is dismissed to return to their families and/or workplace.

So…I got off pretty quick this time. I spend about ½ a day waiting in the assembly room, and was then dismissed for the day and told to not come back for the 2nd day. I’ve heard that Jury duty is rare in Puget Sound, so I might be scot-free for a decade. I guess time will tell!

Friday, June 26, 2015

Break up with your mechanic (Honda Pilot and other heavy cars break issues)

For a number of years now I’ve been the proud owner of a Honda Pilot. That kind of size fits me really well, as I’m pretty big fellow. However, there’s one downside to owning the Pilot, which also applies to several other big vehicles. Stopping heavy vehicles takes a lot of breaking power, but many SUVs such as the Pilot are equipped with relatively-small breaks that aren’t really fit for the job. When you break the car, the strain causes the breaks to heat-up, and if you break extensively (for example, if you drive a lot in a hilly area), the breaks overheat and the metal plates known as break rotors start to deform. When this happens, you start to feel the car vibrate when you break. At first, it’s just minor shaking when breaking at high speeds, but as time goes by, it can become noticeable even when slowing down at low speeds.

How soon this happens depends on your driving and where you live. For people who drive a lot down the hill, this can start to happen within a year of buying the car. The “fix” for this is “turning” the rotors, during which the rotors are taken out and get a run-over with a lathe, which grinds a layer off the rotors and returning them to their former smoothness. Unfortunately, this isn’t really a fix, because not only will the rotors heat-up and deform again, they will actually do so faster as they are now (thanks to the turning) thinner and more sensitive to the heat.

A better fix is replacing the rotors with new ones, but if you just get regular rotors, you’re buying yourself a year or two at the most. About half the cost of either replacing or turning the rotors is the labor, as taking apart everything takes about 1-1.5 hours (auto shops often charge 100$ and up per hour). Usually, the deformed rotors also wear-out the break “pads” faster, so most mechanics will recommend replacing these too (some will outright DEMAND it).

When my previous Pilot had this issue, I paid a mechanic about $440 for the whole thing, including parts, labor and taxes. However, when I needed to do this again a year later, I decided to not take the lazy and expensive way out, and researched my options a bit better. Here are my lessons, and hopefully, this can save you too some money and heart-ache.

The 1st thing I learned is that there’s actually an even better fix – Drilled rotors. This is something that’s typically done to Race cars to improve the break’s performance. This entails drilling about 20 holes in the rotor, which allows it to cool faster. With race cars, this improves the reliability of the breaking system, and for us home users, it improves the cooling, which means the breaks can sustain more action before deforming. This doesn’t mean it’s foolproof…if you drive down all the way down from Mr. Rainier, they will still heat up and possibly deform, but for normal driving, drilled rotors will last much longer. Another thing that can be done to rotors is “Slotting”, which entails making deep grooves in the rotor. Slotting also improves the performance, although lesser so than drilling.

This doesn’t mean you drill your rotors yourself, of course. There are many break manufacturers who offer drilled, slotted or Drilled & slotted rotors. Some better known brands are DBA, StopTech, Power Stop, ACDelco, Raybestos and Brembo.

Below you can see regular rotors, slotted rotors and then rotors that are both slotted and drilled:


If you go to your auto shop and ask, they should be able to get you such improved rotors, but as I’ve found out, parts cost a LOT more at ALL car shops. I’ve literally called up dozens of them, and they all quoted me upwards of $150 per rotor, plus around $35 per break-pad, plus labor and tax. My solution? Buying online!

Sure, buying car parts online is scary. It’s hard to know if the part is good or not, and it can be hard to know if it will actually fit your car. It’s also hard to know if you really bought everything you need, or whether you’ll find out last-minute that you’re missing a part. Well, being Frugal can be stressful, and I can’t recommend this to everyone, but even if you do go and get the parts at a garage, make sure you shop around and haggle down the price. If a set of drilled and slotted rotors and pads can be had online for $190 (shipping included), there’s no reason a mechanic should charge you $500 for it. Their typical excuse is that it’s the price “their computer” gives. This is bullshit, of course…if they stick to a supplier that is charging them twice the market value, they are screwing themselves AND their customers, and they won’t lift a finger to get you a better deal, find another place. Most cities will have dozens if not hundreds of shops, and since replacing your rotors is usually not very urgent, put in the time to shop around. By the way, Amazon’s site can actually tell you whether a certain part fits your car. When you search for stuff like break rotors or break pads, you can tell Amazon which car you have, and it will tell you. Power Stop is a highly rated maker of breaks, and they are very affordable, and also offer kits that include a full set of rotors and pads that’s cheaper than buying separately. Below you can see the fit guide. My kit was this.


Next thing to consider is labor, of course. Replacing rotors is one of the simplest jobs for a mechanic. It’s not “easy”, but there are really no variables or diagnosis. With the right tools and experience, a mechanic should be able to complete this (replacing 2 rotors and pads) in 1 hour. Without the right tools (for example, without a good lift or an impact-drill to remove the bolts), it could take 1.5 hours, but absolutely not more. A decent car shop should charge no more than $100 per hour, and it’s worth asking explicitly how much labor this job is, and how much they charge per hour. If they want more than $150, then you’re dealing with crooks. Again, to be clear…this isn’t one of those things where there’s “quality”…it’s not like a Doctor doing heart surgery. Replacing breaks is more equivalent to a nurse putting on a bandage, and there’s no reason to pay a lot for it. If the mechanic charges more because he has 80 years of experience…than he’s just playing you for a fool.

Personally, I know how to do this sort of work myself, and I could have stopped there, having spent $190 on a full set of parts, but I decided that at my age, I shouldn’t break my back and risk getting hurt (I’m a tad clumsy with the tools), so I decided to go ahead and pay for someone to do the work.

Most shops I asked don’t want to give up the nice margin they make on parts, and refused to do the work with parts “from dat damn innernayt”, and others tried to deter me by proclaiming they can’t warrant the job if it’s not their parts. I told them all to get lost, as they were quite a few shops that were happy to do the work (in fact, several even SUGGESTED I get the parts myself to save costs). The one I picked was a local company called CTU. Their benefit? They COME TO YOU (hence the acronym CTU). They charged me $90 for the work (which was already lower than most others) and performed this in my driveway quickly and easily. This way, I didn’t have to waste time driving around or waiting around for the job to get done. Furthermore, they actually were happy to do this on Sunday, so my car was getting fixed as I was watching a good episode of CSI.

The CTU I’m referring to works around Kirkland, Washington, but comparable companies usually exist all over the country. You might need to look them up on YELP or Craigslist (type “Mobile Mechanic”). Naturally, they can’t make all kinds of repair on the go, but for stuff like breaks, changing a battery, lights and stuff that doesn’t require specialized equipment or parts, this kind of service is super convenient.

Friday, February 13, 2015

Pure Cheenius (cheese making 101)

As you may know, I’m an Israeli living in the USA. There’s a certain type of cheese which I love, called “Tsfatit” (or Tzfatit) that’s very common in Israel, but does not exist in America. As a result, I had to learn how to make it myself (same reason I learned to cook and make most of the things I do…). I also realized that there are many others who are interested in this cheese and learning how to make it. I also learned that many people are publishing misleading info about cheese-making, making it sound more complicated or difficult than it really is. Here’s my guide to making cheese.

While I’ll be talking a lot today about this Tsfatit cheese, it’s important to know that the basics of making cheese are common to almost all kinds, so this guide isn’t only about the Israeli cheese, but many others as well. The basic idea of cheese making is taking some milk, and causing it to coagulate into curds. Then, these curds can be turned into various types of cheeses based on certain steps and processes. For example, adding just a little salt and applying low pressure to the cheese leads to the creation of Tsfatit, but simply adding more salt and pressure would make it a Feta cheese. If, on the other hand, you add less salt and do some kneading on it, it would become Mozzarella.

The basic ingredients for cheese are:

1. Milk

2. Coagulating agent (Rennet)

3. Additional flavorings, if desired (salt usually, and other stuff at will)

You’re also going to need at least one special piece of equipment – a cheese cloth. It’s a type of cloth that’s specially designed to allow you to press the cheese curd into a final density and texture. Cheese cloth can be purchased at most supermarkets for about 2.5$ per square yard, and naturally, cheaper online. Essentially, you can wash the cloth after making cheese and reuse it, but I find that to be very difficult. You can’t simply put it in the washing machine with cloths, and hand-washing might leave some cheese on it, which would spoil, stink and might be risky for your next batch of cheese. Since it only takes about ¼ Sq. Yard for a batch of cheese, I just discard it after a day of cheese making and use a new piece next time around. Note that not all cheesecloths are created equal. Many are very fragile, which would mean you’d need two layers to hold the cheese together. This also makes them harder to clean and re-use. I recommend this brand: http://amzn.com/B006JWL22I . At $7.5 for 4.8 square yards, your cost would be only about 38 cents per batch even if you don’t reuse the cloth at all.

Another specialty hardware that’s not strictly required, but highly recommended is a cheese mould. This is a plastic cylinder which helps press the cheese into its desired form. A skilled person can simply squeeze the cheesecloth with his bare hands, but the mould gives it a better form, and makes for a consistent and nice looking piece of cheese. A basic mould costs about 20$, such as this one: http://amzn.com/B008K19FNE . Its size is targeted at making about 1-2 pound piece of cheese from 1 gallon of milk.

The coagulating agent used in cheese-making is Rennet, which is a group of enzymes that cause the proteins in the milk (kappa casein molecules) to stop binding to the water molecules in the milk, and instead, bind to each other, forming the curd. Rennet is usually made from meat, but there’s vegetable based Rennet, which is suitable for vegetarians, as well as kosher observant Jews (the Jewish religion forbids mixing of dairy and meat products). Rennet is available in many supermarkets in tablet form, as well as online (http://amzn.com/B006JMJK2C ), typically at around $10-12 for 10 tablets. Only ¼ tablet is actually needed to make a batch of cheese, so those ten dollars go a long way. There are some recipes that call for using various acids (citrus juice, vinegar etc.) instead of Rennet, but my experiments with this didn’t lead to good curding, so I recommend sticking to Rennet. Rennet is also available as liquid, which is a tad more convenient, but its shelf-life is a lot shorter, so I’m not a big fan.

Other items you need, and should be available at any kitchen is a pot to heat the milk, a colander to filter the curds out and a stirring spoon. Here’s how it’s done:

Step 1 – choose and get milk

1 gallon of milk typically makes 1-1.5 pounds of cheese. If you press the cheese more, you will squeeze out more water, making for heavier, denser cheese (and less of it, of course). I advise working with half a gallon, as it’s easier to work-with. You can use any milk, except milk that’s ultra-pasteurized (the ultra-pasteurization prevents the coagulation of the milk into curds). Since most of the milk is water, and the resulting cheese is about 1/5 of the original milk volume, low-fat (1%) milk will product cheese that’s around 5% fat, while whole milk (3%) will produce cheese with around 15% fat. You can also use half-and-half (10% fat) to make 50% fat cheese (YOLO, MOFO!!!).

Step 2 – make the curds

To form the curds, the milk needs to be warm. Various guides out there spit out crazy complicated heating-and-cooling, but I find that it doesn’t need to be crazy hot or crazy-accurate to work. Heat the milk up in a pot to somewhere around 90-110 degrees F. If you are using Rennet tablets, crush and dissolve them in a little (teaspoon or tablespoon) or luke-warm water, and then pour that into the milk. If you’re using liquid Rennet, just drop it in. Mix it up a little and gently. Put aside and wait 10-15 minutes. Once you’re back, the milk should have curded and the entire pot would be like white soft jelly.

Step 3 – slush the curds

Use your stirring spoon or a knife to cut the curds vertically and horizontally every inch or so, to end up with a sort-of “salad”. Don’t be rough or over-do it, because we want to have big chunks and not tiny ones (those will simply squeeze out of the cheese cloth and leave you with little to no cheese). If, for some reason, the curd you have is so soft that it falls apart to tiny curds, dump it and start from scratch. This could happen with certain types of milk and there’s nothing you can do other than get another type.

Step 4 – dry the curds

Use a colander or straining-spoon to filter the curds from the water. I like using a pot with an attaching colander-lid, but you can use any way you like as long as you’re gentle enough not to crush the curds. Don’t feel that you need to filter it COMPLETELY. That’s hard and not necessary, as long as you got most of the liquid out. The curds typically sink in the fluid, so usually swirling it in the pot would send more fluid up for you to spill out until the curds are fairly dry.

Optional: expedite the reduction

If you want to hasten the completion of the cheese, you can warm the curds a little, which causes them to expel their water faster. You can stick them in the microwave for 30-45 seconds, or if they are still in the pot, put it back on your stove for a minute or two. Doing this makes the pressing part a bit easier, as you’ll have less water to squeeze out in the mould. Just be careful when heating to not burn the curds. With careful warming and experience, you could get to a level where the cheese is almost fully done in minutes.

Step 5 – flavor the cheese

At this point, your cheese will have ZERO flavor, so now is the time to add some taste. One table-spoon of salt for ½ gallon of milk produces Tsfatit. Two table-spoons will produce the saltiness of Feta (Bulgarian cheese). Other interesting additives are ground Pesto, crushed Garlic, sun-dried tomatoes or shredded Salmon.

Step 6 – press the cheese

Assuming you have a mould, line it with a ¼ square yard of cloth (about 20”x20”), and pour the curds into it. Now “close” or fold the cloth over the curds (they would still be very soft and gelatinous). Place the mould’s follower (the flat plastic disc it came with) over and press down to compress the cheese and squeeze out more liquid. THIS is the important part…the more you squeeze, the denser the cheese (and less of it you’ll have). If you started with ½ gallon and using an 800 Gr mould like I suggested above, an ideal target would be about 1 ¼-1 ½ “ thick. If it’s thicker, it might be too soft and fall apart. Thinner might be tough to chew. Squeeze gently, and if you reach a point where the cheese resists and you see it extrude through the mold (instead of water coming out), don’t push more. Simply leave the mould in a bowl, with some weight (like a large can of tomatoes) on it, and it will slowly leak out more water and squeeze on its own. I recommend putting the whole thing in the fridge over-night, and by morning, you should have perfectly formed and shaped cheese.


Don’t have a mould?

If you elect not to use a mould, you can simply dump the curds into the cloth, and then tie it around the curds and squeeze it by hand. It’s a lot messier as your hands will be covered by the white whey-water. This also tends to get the cheese-cloth stick, so that when you open it, it will peel off some of the cheese. However, it’s a reasonable alternative if you need to save money.

Step 7 – other types of cheese

Other types of cheese start out almost the same, but additional steps are taken onward. Yellow cheese typically require the curds to be pressed for an extended period in a humid and warm place (3 weeks for simple yellow cheeses and up to several years for advanced stuff like Swiss and Gouda). Mozzarella is another alternative where the cheese is kneaded like dough until it gets to the right consistency and texture. For Bree, parmesan, blue cheeses and other, special types bacteria is added, which gives the unique tastes of these cheeses over a number of weeks to years.

Monday, February 9, 2015

AGT (America’s Got Talent) auditions…changes in Season 10

While attending the auditions to Season 10 today, I noticed a few changes to the process, so I figured I’d share them, and point out a few things a lot of people seem to miss. I’ve only been to the audition in Seattle (actually Tacoma), so these might not apply elsewhere.

1. During the paperwork phase, pens were provided freely, so everyone could focus on writing their info.

2. The exact questions on the form (in case you want to plan your answers) are:

a. Stage name or group name

b. Briefly describe your talent

c. Age or age range of your group members

d. Occupation

e. City of birth and residence

f. Title and artist of the song performing to at this audition

g. How long have you been doing your act and how did you learn it?

h. What is your dream?

i. What obstacles have you overcome in pursuing your act?

j. Talk about your biggest supporter?

k. Why is this talent important to you?

l. What other talents do you have?

m. Have you ever auditioned for this or any other talent competition reality show?

n. Please list any additional interesting information about you or your act that we should know.

3. Here’s the actual form. Note that the lines are fairly small, so if you want to make the producer’s life easier (more about that in a second), copy the questions to your favorite word processor, type in your answers, print and bring with you to the audition:


4. The audition start time was 8am, as opposed to 9am in 2012. I showed up at 6:45 and was no. 52 in line.

5. At least part of the time, The performers were not separated to singers and other, and the audition wasn’t 1:1 for everyone. I was part of a group of 6 that were brought in as a group, and stood in line against the wall, and called up by the producer one after the other to the center of the room to introduce ourselves and perform. I know some other folk who were seen 1:1, though.

6. It was made clear to us that decisions will not be done today, but later, and if we passed, we would get called or emailed within 3 weeks.

7. The 2012 process was a bit messy, but this time around things seemed very finely tuned. Putting aside the 75 minutes I came early, it went pretty smooth and I was done and out by 9:30.

I forgot to mention this last time, but at the audition, the performance is limited to 90 seconds, which isn’t a lot. This doesn’t include the introduction, and it’s not enforced too strictly (as in, the floor doesn’t drop at 91 seconds). However, I strongly advise rehearsing and timing your performance, and aim for 80 seconds to give yourself some buffer. If you end up slipping to 100 seconds, it won’t hurt, but you should risk out-staying your welcome and appear unprofessional.

Another tip I can offer for AGT is that the supply is HUGE. They literally need to screen thousands and thousands of people and thin it down to a few hundreds for each city with the celebrity judges. You might be a great musician or singer, but being good alone doesn’t come close to cutting it. That’s what the form is about…finding people with some sort of distinction. The production likes sad stories and stories of overcoming great difficulties in life (related to the performance or not). There’s also preference for other stand-out talent (weird looking, strange behavior etc). The producers need to give the celebrities the best, but also the worst…people they could make fun-of on national TV. You can’t just be a little out of tune to be among that group…we’re talking crazy hair-dos, weird hats, crazy behavior or voices, mentally-ill behavior patterns etc. Another thing they like is people who will evoke emotions with the viewers, so being cool, well-mannered and polite is not it. If you cry easily, look very nervous or afraid, frantic or super-excited, that’s a bit Boone for your chances. Another thing to keep in mind is that even those who do get to perform in front of the celebrity judges may not end up onscreen. A typical audition day for the judges is 10-12 hours, during which they see around 100 people, but only a fraction of those end up on the broadcast (typically about 15-20). Those who are shown are usually those who are known to have moved-on to the Vegas/NY day step, plus a few others and a handful of terrible/crazy/stupid acts.

Regarding the form and readability – the producers will use what you write to help them pick out the outstanding performers, so writing effectively and clearly is key. If you got a sloppy hand-writing, slow-down and write CLEARLY. You can also pre-print the info as I suggested above. If you write sloppily, the producers will most likely just move on to the next guy, so you’re basically screwing up your chances completely. This is THE place to write clearly.

For comedians, especially, I can offer the following advice:

· You’re performing in front of a single person, who may or may not be interactive. This is VERY detrimental for comedy, so prepare with a friend (to sit 10 feet away and look down at the desk). This could help you keep your balance and not lose yourself.

· The room doesn’t have a Mic, which is very unusual for us used to holding the Mic or using it as a prop. Practice without a Mic for this one.

· The pressure could make the best performers forget their setup, even if it’s only 90 seconds. Prepare a cheat-sheet. Some like to use the back of the hand, but whatever you prefer, as long as you have SOMETHING to back up your human memory.

· Making comedy work in 90 seconds is VERY tough. Many comedians only do 1 or 2 jokes in that timeframe, but keep in mind the producers don’t have the time or willpower to get invested in a story. Keep your jokes short and plentiful. Figure out a way to make them 15-20 seconds, if you can, so you can cram 6-7 jokes instead of 2.

· In addition to funny jokes, try to create some memorable character for yourself…something to stand out as a “personality” rather than another set of jokes.

· Keep in mind that you’re auditioning for a family-friendly show, so make sure your material is clean enough for national TV. That usually means less funny, but these are the rules of TV.

Good luck!

Friday, January 30, 2015

Visualizing one’s DNA

23andme has been around for years, and offer relatively cheap service of DNA analysis. Their tech allows anyone to see health issues related to their specific DNA composition, as well as familial connections and history. As a customer of 23andme, I enjoyed the info they provided, but I was also looking for a way to visualize my own unique DNA…similar to how you’d see it on crime shows like CSI.

Unfortunately, 23andme doesn’t offer any info or service on doing this, so I had to investigate myself. Thankfully, they DO allow you to download your “raw” DNA, which is a 20+ MB text file with tons of rows like this:

















































The table is actually something along the line of almost a million rows, so turning all this to something visible isn’t that simple. The first question is WHAT is it that we want to visualize. Well, DNA is composed of 4 nucleotides – A, C, G and T, but it’s far more complex than even those million lines. In fact, a full DNA sequence is typically several BILLION items long (if you stretched it out, it would be 2-3 meters long, yet only 2.5 Nanometers wide (if you scaled it up to the thickness of a human hair, which is the smallest thing we can see without a magnifier, it would be about 100 kilometer long!)

Research has found that only a small fraction of the DNA is actually used in our “construction”, and the rest is just filler. When DNA is scientifically analyzed, all that filler is disregarded, and scientists have created a database of DNA pieces that “matter”. In this database, each such piece is numbered, and is known as a “Single Nucleotide Polymorphism” or SNP for short (it’s pronounced “snip”).

When a person’s DNA is analyzed, like 23andme does, instead of just listing out your entire DNA, they match your nucleotides to those listed in the database, and the result is a long list of those. If we look again at the table above (my 1st chromosome), we can see that nucleotides from position 1 through 82153 were disregarded, but the nucleotide in position 82154 is significant, and having AA there was recorded as SNP number 4477212 in the database (anyone can look it up here: http://www.ncbi.nlm.nih.gov/SNP/) . After that, we jump ahead over 600,000 nucleotides to reach another one.

23andme doesn’t actually give you the ENTIRE DNA, so even if I wanted to visualize the whole thing, I wouldn’t be able to. Even the reduces set is a bit much, as it’s almost a million records, each with a SNP ID between 0 and about 80 million. What I elected to do is represent each SNP ID with a color in the range of 16,777,216 shades a computer can display. In case you weren’t aware, a computer displays color as a combination of Red, Green and Blue, with each color ranging on a palette from 0 to 255. The range of colors goes from 0 Red, 0 Green and 0 Blue to 255 Red, 255 green and 255 Blue. Technically speaking, this type of visualization is for entertainment purposes only, and has NO scientific accuracy or value. You would never be able to convert the graphics back into a real DNA sample.

To actually produce this, I’ve created a simple program, which processes one’s DNA file and creates one of 4 styles of visualization. You could choose to use any or all, and do whatever you like with them – use as Wallpaper, print on a shirt, mousepad or poster, or anything else. Here are two of the visualizations:



Depending on demand and feedback, I might come up with additional variations of the visualizations. Here are the instructions:

1. To get the application, click here. It’s 135KB, and there’s no installer…just drop it somewhere on your hard drive.


2. To get your RAW DNA, go to 23andme’s website, and login.

3. Click on your name on the top-right, and choose Browse Raw Data


4. On the top-right, click Download. You will be asked to sign-in again.


5. Download the file as ZIP, and expand it.

6. Launch my application, and browse to the text file you extracted from your ZIP

7. Click Pre-process, and wait for it to complete (should be about 5 seconds)

8. Click on the samples to see the visualizations, and then on one of the corresponding buttons

9. Take a screenshot, and paste it into your favorite graphic application (I highly recommend Pain.net)


***I should note that since DNA files don’t really come-around easily, I was only able to test this with my own DNA. I can’t promise the app won’t choke, crash or fail to process your own file. If it does, though, I would appreciate it if you contact me through the form on the right and let me know, so I can fix up whatever error there is.