Month: March 2014

mexican drugs and weapons

Photos of Mexican Drug Lord Zetas leader Miguel Angel Trevino, aka Z-40’s Home, After Being Raided!!

Want to see real Breaking Bad? Here it is..

Photos of Mexican Drug Lord Zetas leader Miguel Angel Trevino, aka Z-40’s Home, After Being Raided:

Yes, that is cash piled on the table in the background! (more…)

linkedin business lead

What is the best way to generate business leads from Linkedin?

Adapted from Rohit Onkar:

I am  always asked this question “How can LinkedIn help with marketing?” from  clients, subordinates and even my bosses. If you follow the below  mentioned power points, LinkedIn can do wonders for your business.

1. Optimize your LinkedIn profile – Chances are when people are looking to buy products/services, they  might just stumble upon your profile. A good description of what kind of  services/products you provide might just help you rope in few leads.
#Tip: The new skill endorsement feature is another reason why you should list your skills and expertise on your LinkedIn profile.

 2. Brand your company page and keep it active – LinkedIn has realized the importance of a company page as a community  building tool and is in the process of re-designing it to make it more  visual in nature. Having a products and services tab and doing status  updates is a must. If you can get a couple of existing clients to  recommend your products/services that will give your company page the  initial buzz that it requires. Also, it will have a significant impact  on the purchase decision of your prospects. Company pages also serve as a  medium where existing customers can come and ask for support. Once you  have a good number of followers, you can lure your prospects by special  offers in addition to giving existing customers discounts on  repurchases.

 3. Identifying prospects through LinkedIn Groups & Answers – This one has worked wonders for my current clients. It’s always  better to target people who are already looking for a product/service  you provide. It’s more of shifting the paradigm form  “push” to “pull”.  Use LinkedIn signal to look for such prospects. There are numerous  conversations going on in LinkedIn groups and answers. You just need to  find them 🙂

 4. Using LinkedIn advanced people search – This one is more of building a prospect network and tends to give  benefits in the long run. Add people who fall in your target category  and start interacting with them. But be careful about being too pushy.  This method is a double edged sword and might lead to a social media  backlash. There is surely an amount of success rate involved with this  process but you just need to be a little extra careful. For quicker  results, Inmails with guaranteed responses are also a good option.
#Tip:  Upgrading to a premium LinkedIn account will help quicken the above  process and also give you insight on prospective clients visiting your  LinkedIn profile.

 5. LinkedIn advertising – A solution offered by LinkedIn which is totally worth it. For B2B  specially, the ability to target people by job function and industry  gives a great ROI. The self advertising program starts with $2/ad click.  This is great and you tend to get better results when you target the  mid-bottom section of the organizational pyramid. These people may not  be decision makers but are most definitely strong influences.

For targeting the upper section of the organizational pyramid (in a b2b  scenario) or if you are looking for a b2b/b2c branding + lead generation  solution, you must take a look at LinkedIn custom ad units &  solutions – http://socialmediatoday.com/rohit-onkar/688031/customized-linkedin-adver…

 These solutions though a bit on the higher end ( you need a minimum  budget of $2,000 ) give you better reach and “hotter” leads. So if you  are looking to beat the competition in the self advertising program and  reach “only” decision makers, you should consider using them.

 6. Converting “Weak Social ties” into “Strong Social Ties” – Quite a few times, the prospects you have identified on LinkedIn via  any or all of the above steps, don’t convert into customers immediately.  This is specially true for high end b2c products and almost every b2b  product wherein the purchase cycle is long and involves a lot of social  elements. In such a scenario, you must create a LinkedIn group and get  all of your prospects to join the group including your existing  customers. When your prospects hear the experiences/testimonials of your  existing customers, they sure will convert into customers. In addition,  by doing this you are creating a community of product/service/brand  evangelists and advocates.

 The group will also be a resource  to cross sell/ up sell your services/products. Just like your company  page, customers can also seek support within your group.

 Once  the group becomes large enough, you can create sub groups for existing  customers and “weak social ties” ( prospects ). Also, if you have a  large sales force, you should invite them to join the group as well and  get them to close some sales 🙂

 The major difference between a  company page and owning a LinkedIn group and the reason you must own  both is the fact that via a company page you will always be the one who  has to initiate a conversation ( the functionality is such ). Whereas in  a LinkedIn group, people talk amongst themselves. Another point to  consider is that whenever you post a company page update, it is pushed  into the news feed of the people who follow the company, whereas group  discussions are sent via email to people ( 1 email per week ).

 7. Being patient and staying away from myths about LinkedIn – Just accept the fact that good things take time to materialize. Be  patient and LinkedIn can work wonders for you. Finally, stay away from  myths like “LinkedIn is only for HR” or “people come to LinkedIn only  when they want to switch jobs”. A recent study shows that people come to  professional networking sites like LinkedIn because it helps them  perform better in their present job assignment as opposed to “just”  looking for a new job. You can refer the snapshot below.

linkedin business lead

P.S.  I asked myself why I come to LinkedIn and the better part of me agrees  with the “blue” guys on top. Do you agree too? How successful has  LinkedIn marketing been for you? Let us know in the comments section.

Can LinkedIn Help You with Your Marketing?

As far as a practical example is concerned, my firm SMG Convonix has been able to identify 120 prospects for a b2b client in a period of 6 months from point number 3 alone! The cost per customer lead has come down to $20 from $96 as a result of point 5. All the above steps have resulted in an increase in lead conversion rate by 84%!

coding java programming

How is competitive programming different from real-life programming?

Adapted from Anthony Moh:

In competitive programming, you just have to choose the first algorithm that comes to mind that you think will work and then code it. The aim while coding is to just get it down and make minimal mistakes. You do not have to worry about maintenance  documenting etc. No need to to think much about how to name the variables, split the code into functions and so on. Also, competitive coding is short. You will not have to spend more than a few days on it. And most of your time is spent coding.

While competitive programming gives you important knowledge of algorithms and how to implement them, you will find that in most jobs, coders just use libraries of algorithms. So, the most useful part of competitive coding is learning which algorithm to use for the problem at hand. At office, you will spend only a small amount of your time writing code. Most of your time is spent in deciding what to code, testing, documenting and …

You are in thprogramming bug jokee jungle. You have a pocket-knife. Someone asks you to kill a mountain lion. Anyone but a programmer would be asking “WTF is a MOUNTAIN lion doing in a JUNGLE?!”, but that’s not what you have been trained to do as a programmer. You are here to solve problems, not to question them.

Years of training has taught you well. You use your knife to sharpen a stick. You cut vines to lash sharp stones on one end. Maybe you’re from a top university, and you’ve learned to extract essential ingredients from plant and insect life around you to fashion a poison to tip your weapon with.

Convinced that you have an effective and efficient way to kill the lion, you set forth to accomplish your task. Maybe your stick is too short, or your poisons don’t work. It’s okay – you live to refine your method and try again another day.

Then someone figures out a way to fashion a low-grade explosive from harvesting chemicals in the jungle. Your method of fashioning a spear to kill the lion is now far from the best way to accomplish your task. Nevertheless, it’s still a simple way, and will continue to be taught in schools. Every lion-killer will be taught how to build his tools from scratch.

That’s “real-life” programming.

In competitive programming, you start out with the same resources (a pocket-knife), except you have 2 minutes to kill the lion.

As a beginner, you will stare at the lion and do nothing.

Soon, you learn that if you kill a squirrel, sometimes the judge thinks it’s a lion and you’re good to go.

A more experienced programmer just keeps stabbing the lion and hopes that the lion dies in time. Soon, you learn that there are certain spots on a lion that are damage immune. You learn to not even bother stabbing those spots. Sometimes, the lion doesn’t expose those spots, so you get really good at killing squirrels. (more…)

beginner programming or coding

What are the best ways for a complete beginner to learn programming?

Adapted from Roshan Choxi, Cofounder and CEO of Bloc

It’s been my sole focus to answer this question for the last two years, and I think a lot of the resources mentioned here are great but I’ve noticed there are three strategies that successful students consistently use better than anyone else regardless of what resources they use:

1. Focus on habits, not goals
2. Learning alone is painful
3. Build things (more…)

coding java programming

How do you keep your programming skills sharp?

Short answer: ABC: Always Be Coding.

1. The more you code, the better you’ll get — it’s that simple. By coding, you’re practicing. But the best practice is focused practice. Have goals in mind, explore new areas, and challenge yourself. Over time, you should develop a portfolio of both unfinished and finished projects. GitHub is a great place to put this portfolio on display, but just having an eclectic body of work is huge.

2. Re-build the wheel. You should implement the most common data structures in the language you’re trying to learn. Do not rely on common libraries. Implement the following and write tests for them: vector (dynamic array), linked list, stack, queue, circular queue, hash map, set, priority queue, binary search tree, etc. You should be able to implement them quickly as you get more comfortable with the language. (more…)

python script logo

What are the main weaknesses of Python as a programming language?

Answer by Jesse Tov:

The essence of my complaints with Python boils down to two things:

  • Much of the language consists of special cases rather than general features that combine in orthogonal ways. This results in infelicities and weird corner cases.
  • Guido van Rossum has a history of getting the language design really wrong (e.g., http://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html), which means that we might expect him to continue to get things wrong in the future.

Some examples:

  • Python has perpetual scope confusion. As far as I can tell, this is because van Rossum didn’t understand lexical scope initially, so he got it wrong. (This isn’t a problem unique to Python. It seems pretty common among early versions of scripting languages.) Originally, Python was dynamically scoped, which everyone but RMS agrees is wrong. Then they did away with the dynamic scope, but made it so that inner scopes couldn’t even see variables from outer scopes, which is bizarre in a supposedly block-structured language. Now inner scopes can see outer scopes but can’t mutate them, which is bizarre in a supposedly object-oriented language. Some may claim this is a feature, but it’s an accident of implementation. I’m sure when he fixes that, he’ll break something else.
  • David Parnas invented information hiding more than three decades ago, but it’s “unPythonic,” so Python is missing probably the biggest advance in programming since FORTRAN 2.
  • eval

    breaks alpha-equivalence — that is, you can’t arbitrarily change the names of variables, because some variable occurrences can hide in strings, which makes the binding structure of Python undecidable.

  • Python is untyped, which means that a whole bunch of errors that are easily detected ahead of time aren’t detected in Python until they happen. Some people like it that way — and more power to them! — but it’s always worth considering whether it’s a misfeature for your particular application
  • Syntactic whitespace can be nice, but it makes code generation harder than it has to be. This isn’t a difficult problem to solve. Haskell lets you use either syntactic whitespace or an equivalent syntax involving curly braces and semicolons. One is good for people and the other for metaprogramming, and there’s no good reason not to support both. It doesn’t help that when people have requested this, Python’s implementors have been really snotty about it. (Try
    from 
    __future__ 
    import 
    braces

    .)

  • Limiting the bodies of
    lambda

    s to be expressions rather than statements is arbitrary and annoying. That variable declarations and assignments are statements rather than expressions is arbitrary and annoying. The statement/expression distinction is arbitrary and annoying.

  • “The [hash table] is a stark data structure.” Python, like the other table-based languages, encourages you to use “mappings” for many things where sum-of-products (algebraic) datatypes would be more appropriate. This is inefficient, but more importantly, it’s error-prone. To continue quoting Perlis, “Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis.” Python’s lack of support for appropriate data structures encourages program structure that hides case analysis.

All that said, I’d still rather work with Python than PHP or C++. But that’s like saying I’d rather eat Jack in the Box than McDonald’s. It might be slightly more palatable, but it’s still pretty bad.

View Answer on Quora

coding java programming

What are the best resources (sites, books or tutorials) for learning programming?

Answer by Nick Huber:

I’ve been spending 6-8 hours/day teaching myself to program for the past month or so and have basically scoured the Internet for every free or semi-free tutorial out there.

Here’s the good stuff I’ve used and recommend:

  1. CodeHS — Personally graded, video-then-program format problems, starting with a toy language called Karel and moving up to Javascript, culminating in you making the game Breakout in your browser. Founded by two ex-CS106a TAs at Stanford from which the curriculum was largely adapted. They have probably 40 hours of really good content and, most importantly, provide you friendly, one-on-one help with like ~3 hours turnaround when you need it. Check out my version of Breakout I made after doing all of the content: EpicBreakout. (1)
  2. Google’s Python Class — Unlike above, requires some set-up on your machine (i.e. you’re not coding in-browser), but still good. About two days worth of lectures on Python with a handful of good problems, culminating in regular expressions (like a custom CRTL + F in a Word document) and a problem where you descramble an encoded image from a website.
  3. CodingBat — Python and Java problems. No frills, just the exercises — probably better for someone with a little bit of background (meaning you know what a function/parameter is and can use The Google to figure out/find syntax/functions you need). The site was made by the same guy who taught the Google Python Class.
  4. Khan Academy — A few intro tutorials (mostly graphics/animation-focused) in JS using a well-regarded library (Processing.js) and then a wide-open project space for you to see programs other people have made (i.e. the end result and the code) and to make your own, potentially forking off of their work. Here’s a game that some guy made that served as inspiration for my version of Breakout: Mercury Subspace. Pretty great, right?
  5. Codecademy — Solid read-then-write-code format of small problems broken into different subpieces. I used their HTML/CSS tutorials to get a basic background before making my personal website (http://www.thenickhuber.com/) and am going to use their stuff on more advanced JS and jQuery when I get to it. Still, their grader is a bit buggy and there’s a large variance in course quality/overlap in material, since everything is written by different people.
  6. Learn Python The Hard Way — Read-then-implement exercises, starting from no assumed knowledge. Good, but still not as good as interactive problems; I gave up after doing ~20% or so of it because it’s unapologetically repetitive, but have read lots of good reviews of it.

Other good stuff I want to check out:

  1. Stanford iPhone course (all slides and assignments: http://www.stanford.edu/class/cs…) — an iPhone app seems like such a good early project, because it’s so easy to show your friends what you’ve made, but have to figure out how completeable it would be for me. Also, you can’t get your problem sets graded if you’re just working on your own from the material online.
  2. K&R (http://www.amazon.com/Programmin…) — Highly regarded intro book on C and implementations of the most canonical algorithms. (If you know of a website that tries to do something like this, would love to get it from you.)
  3. The many CS courses on Coursera and Udacity. However, I think it’s really important that you have someone grading your work so that you can get feedback (and that you actually do the problems rather than just watch the lectures). I’m not sure if this is possible if you take the course “off-cycle” and how good the problems are, but still worth taking a look.

After a month, I’ve now got a better idea of what I can make and this then informs things that I think would be cool to make. At this point, I’m most excited about continuing with this project-based learning approach as I think it’s more effective/lasting/fun than more tutorials/classes, but it’s still tough to get this outside of the university/work environment.

View Answer on Quora

python script logo

What are the best Python scripts you’ve ever written?

Answer by Akshit Khurana:

Thanking my 500+ friends who wished me on my birthday on Facebook:

It was my 21st birthday and there were three stories that made the day memorable. This was the last one of the day.

I prefer to comment on the wishes individually and personally, but using python to do that was going to be better.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Thanking everyone who wished me on my birthday
import requests
import json

# Aman's post time
AFTER = 1353233754
TOKEN = ' <insert token here> '

def get_posts():
    """Returns dictionary of id, first names of people who posted on my wall
    between start and end time"""
    query = ("SELECT post_id, actor_id, message FROM stream WHERE "
            "filter_key = 'others' AND source_id = me() AND "
            "created_time > 1353233754 LIMIT 200")

    payload = {'q': query, 'access_token': TOKEN}
    r = requests.get('https://graph.facebook.com/fql', params=payload)
    result = json.loads(r.text)
    return result['data']

def commentall(wallposts):
    """Comments thank you on all posts"""
    #TODO convert to batch request later
    for wallpost in wallposts:

        r = requests.get('https://graph.facebook.com/%s' %
                wallpost['actor_id'])
        url = 'https://graph.facebook.com/%s/comments' % wallpost['post_id']
        user = json.loads(r.text)
        message = 'Thanks %s :)' % user['first_name']
        payload = {'access_token': TOKEN, 'message': message}
        s = requests.post(url, data=payload)

        print "Wall post %s done" % wallpost['post_id']

if __name__ == '__main__':
    commentall(get_posts())

To make this work, you need a token which you can obtain from Graph API Explorer with the appropriate permissions. The script assumes all posts after certain timestamp are birthday wishes.

With a small change in the comments function, I also liked each post.

The screen after I ran the script:

(This screenshot makes things look much cooler than they are.)

Watching the ticker go boom with my likes and comments and the structure of the comments, Shashwat Lal Das | Facebook quickly identified I had done something like this.

Probably not my best python script but this was simple, quick and fun!

The idea came up in a discussion with Sandesh Agrawal in Networks Lab. Thanks for not working on the lab assignments and wasting time with me!

View Answer on Quora

iOS Ferrari Mercedes Volvo

iOS to feature in Ferrari, Mercedes and Volvo cars

Already in June 2013, Apple introduced iOS for the first time in front of the car. Optimized for use in the car function will now be presented at the Auto Show in Geneva, reports the Financial Times. Among the first partners, Ferrari, Mercedes-Benz and Volvo befänden.

Racing cars and luxury cars with iOS 7

Apple's SIRI in Cars

It is not in iOS in the Car to its own operating system, but a future feature of iOS 7: Per iPad or iPhone extends the program the user interface of the vehicle’s electronics – separate Apple hardware is therefore required. Details of the deal between Cupertino and the car manufacturers are not known. However, it is not unlikely that the manufacturer will present the feature in action and announce compatible models. (more…)

Wikipedia Foundation

Are Wikipedia software development engineers of the caliber that could work as SDEs at Google / Facebook / Amazon / etc?

Answer by Brandon Harris, Senior Designer, Wikimedia Foundation:

“OB Disclaimer: I work for the Wikimedia Foundation, so there’s going to be a bit of a “dragonslayer” tone in this answer.

This is a long answer, but I promise you, it pays off.

First, I’ll address your concerns about working with “less talented people”.  There are two things I want to bring up here:

1) I’ve been working in this industry for close to 20 years now.  I’ve worked with brilliant minds and layabout assholes.  Foundation engineers tend to fall closer to the “brilliant” side of that spectrum.  Many of them are younger and inexperienced, but that makes them no less smart.

2) If your deciding factor for working with an employer is based around “being around intelligent people” then I think you’ll be disappointed no matter where you work.  This is because of two things:  a) there will always be people who you think are morons, and b) intelligent people tend to disagree with each other, and that can be a frustration that leads one to think that the other person is a moron. (more…)