The ransomware is called Wanna Cry. Why? Because it actually makes you want to cry. Read on and you’ll know why.

It’s a virus that encrypts all the data on your computer until you pay $300 worth of bitcoin within a few days.

If you don’t, it doubles the price to $600.

If you choose to completely not pay, well… It permanently leaves the data encrypted and there is nothing you or anyone in the world can do about it.

The photos of your family on a trip to Balle Indonesia, that time you were with your buddies skydiving, your most precious moments and years of hard work… All gone.


The strength of that encryption is even beyond what NASA could decrypt. In other words, it’s IMPOSSIBLE to decrypt it unless you have the actual encryption key that they used against you.

And ooh, sorry about this Windows users but you KNOW I love taking jabs at Windows non-stop but this is a big one… This virus only works against Windows users as it exploits one of the bugs. BOOM. Another reason to jump on the Mac bandwagon <3.

Note: Microsoft has now found a patch to fix it so make sure you have the latest updates if you wanna be protected against this attack.

Another note: Yes, you can still be a developer on Windows and if money is a problem then STICK with the OS you have.

Another horrible thing these attackers did is they shut off MRI machines and refrigerators that were used in hospitals to keep blood cool.

But not all hope is lost! There are people out there that are actually fighting this virus and shutting it down. Programming for the win!

How to Design a Logo: 50 Tutorials and Pro Tips

How to Design a Logo: 50 Tutorials and Pro Tips
One of the biggest design misconceptions is that it is easy to make a logo. To begin with, a logo is much more than just some colors, fancy fonts, and graphics put together. A logo is an essential part of a brand’s visual identity.

Creating a logo demands critical thinking, creative input, and methodical planning. Simply put: you don’t just sit down and create a logo while binge-watching your favorite Netflix show.

So, how do you make a logo worth remembering?

We’ve compiled 50 inputs – a combination of rules, tips, and tricks – on how to create an awesome logo. Read on, digest the guidelines, and put them in action.

Make sure to dive into our logo templates to help push your design along faster.

The Basics


1. Get inspired.

Inspiration that jumpstarts the flow of creative juices can come from anywhere. When creating a logo, the obvious sources of inspiration are design-centric websites like Logo Gala. Expand your research to other creative sites such as Dribbble or Deviant Art. Offline, observe your surroundings. Anything that makes you fired up or happy is a potential root of an awesome idea.

2. Learn anything and everything you can about logos.

An effective logo is unique, sensible, visually enticing, and delivers its intended message. In its basic form, a well-designed logo is a form of brand identity. However intricate or time-consuming the design process gets, the end product must always be simple to understand, memorable, enduring, versatile, and appropriate.

3. Develop your own creative process.

Every designer has his or her own approach, and it’s almost never linear. However, a majority of them follow a general branding process. This consists of the following:

  1. Design brief – interviewing the client and making sure you get all the information you need.
  2. Research – learning more about the industry/niche, as well as the client’s history and competition.
  3. Reference – checking out design inspiration related to what the client needs, as well as looking at the current design trends.
  4. Conceptualization – sketching and developing the logo around the given brief and the research you’ve made.
  5. Reflection – letting the idea mature following a quick design break.
  6. Presentation – choosing a couple of design options to show the client, as well as getting feedback and doing some edits until the design is complete.

4. Set up your price system accordingly.

“How much for this design?” is arguably one of the most frequently asked questions, especially during the briefing process. It’s also a question that’s hard to answer, since every client has different needs and requirements. You need to learn business skills – especially if you’re a freelancer – to price your work accordingly. Look into the different factors involved in designing a logo. These include the number of concepts to present, the number of revisions to make, the degree of research needed, and so on.

The best way to handle this business aspect is to draft a customized quote for every client. In doing so, you will learn how to put a financial value on your designs (which is a different topic altogether).

5. Learn from others.

By understanding how other brands made it to the top, you will get tremendous insights on logo-making as a whole. At one point or another, this awareness will you help you become better at what you do.

Tips and Tricks


6. Research your audience.

Designing a logo is not just about creating an appealing visual. Your main objective is to build up a brand. You also need to set up a communicating position between the company and its target audience. This is why market research is important. It’s highly recommended to involve the client at this stage since your take on the brand may not be the same as theirs. It’s critical that you’re 100% clear on the message before you start the creative process.

7. Throw yourself into the brand.

Ahead of doing logo sketches, invest some time compiling information about the client: who they are, what they do, how they work, and what their target market is. Study previous versions of their logo (if available), and think about the upgrades needed to fully represent the brand. Then, make a list of do’s and don’ts pertaining to what the client needs before you get the ball rolling.

8. Save all your sketches.

It’s a common practice for designers to come up with a number of sketches

for a single project. Even if you’re able to pinpoint early on which sketch to develop, don’t discard the others as they can be valuable resources in the future. Just because the other sketches didn’t work for one client doesn’t mean they won’t work for another. Revisit them whenever a new project comes in to find a seed of inspiration.

9. Research online.

If you’re struggling with ideas or concepts, look up keywords associated with the brand online. You can also search through Google images for visual inspirations.

10. Create mind maps or mood boards.

These kinds of tools help filter the ideas in your head, and mix up various images and concepts. Work with keywords and word alternatives to accumulate a variety of inspiration using different sources. Place them in one giant mood board to see how they work together.

11. Build a board and tear it apart.

This is in connection with the tip above. Make a mood board of logos related to your project. Evaluate what made them effective. Afterward, tear the board apart and use your assessment as a guide to make your own unique creation.

12. Stop with the clichés.

Every couple of years or so, a new design fad enters the ballgame. Study the styles – you can even use some of them – but avoid jumping on the bandwagon if the “new” idea is basically just a rehash of an old one.

13. Make the design versatile.

Creating a versatile logo goes a long way in ensuring its longevity. If the logo looks great on posters but awful on novelty items, it can limit its popularity. Versatility plays a huge role on how you select the elements of your design – colors, fonts, layouts, and the likes.

14. Use a grid to produce a timeless design.

When it comes to designing – especially using traditional techniques – everything is about the grid. Case in point: the iconic logo of Shell Oil that hasn’t changed much since its launch in 1971. When done right, the grid makes the design cohesive, put together, and timeless.

15. Use pen and paper.

Even with the techy sketching programs available online, sketching using pen and paper is still the best way to flesh out ideas. Sketching out ideas enables you to experiment freely. It prevents you from being swept up from the finer details.

It doesn’t really matter if your sketching skills are poor. As long as they deliver your ideas correctly, you’re on the right track.

16. Construct vectors.

Right after sketching your ideas, proceed to the more technical aspect of design. The best way to save you time and frustration when you eventually edit your design is to create vectors. In this process, the Illustrator is your best friend as it can rescale your design without sacrificing its quality.

17. Decide on your fonts carefully.

Typography is certainly a key element to an effective logo. There are two main options for this: create a customized typeface or use a pre-set one. If you create your own typeface, avoid making it too trendy. Instead, keep it simple, readable, and classy.

18. Stay away from gimmicky typefaces.

This is in connection with the tip above. Avoid the temptation to make your logo shine by using gimmicky typefaces. The majority of gimmicky fonts are overtly fancy and excessively weak. If you’re aiming for a professional yet unique look, avoid these fonts at all costs.

19. Use a maximum of two fonts.

Naturally, there will be exceptions to this rule. But, as a common principle, using just two fonts is smart if you want your design to be distinct, sharp, and clean.

20. Tell a story.

Every design has a story to tell, and logos are not an exception. If you see a logo as just an artwork or a structure of lines and texts, you won’t be able to express the meaning behind it. Ideally, a powerful logo features two stories: one that is obvious and another that is hidden.

21. Consider the space around the logo.

Most brands require an exclusion zone, which is the area surrounding the logo that isn’t meant to be filled by any other element. This space serves as a protection to the integrity of the logo. When designing, think about how the exclusion zone should be used.

22. Design an active logo.

If you use a device within the logo to facilitate it, think about adding some movement to it. This “movement” isn’t about adding animations, but more of the size, placement, and rotation of parts within the design. For example, a fish will appear in motion if it’s “caught” on a mid-jump. Additionally, you must take into consideration the direction of the intended motion.

23. Think of tones along with colors.

An effective logo works in black and white and in color. If your logo uses color to express a message, consider the best way to show its meaning when the color is taken off. At times, this requires altering the contrast between the various elements of the design so they still express the same message when modeled in monotones.

24. Keep up with trends.

Taking note of current logo trends doesn’t suggest to mindlessly following them. But if you must break some rules to broaden your design options, to optimize a trend – or even start a new one – you must also know what you’re up against.

25. Practice all the time.

If there’s only one thing you remember from this article, make it this rule.

Mistakes to Avoid


26. Underestimate the importance of a proper color scheme.

Colors make up the essence of any visual art. Quite often, designers disregard the value of the astute usage of colors. This is probably caused by the misunderstanding that a ‘clean’ design only involves white.

Designing your own brand?

Download now!


Free Beginner’s Guide to Branding

A fun, friendly, FREE guide to build a stellar brand identity.

27. Fall into the cool, flashy creation trap.

Innovation is a marvelous thing. This is how you can find ways to work around what you have, try things out, and come up with killer ideas for your design. But, all things have its own share of rules and restraints. Your innovative capabilities are countless, but their practical uses aren’t. Excessive experimentation can produce a logo that is lovely to look at, but isn’t identifiable with the brand itself.

28. Undervalue custom typography.

In terms of logo design, your fonts must be distinctive. A customized, hand-drawn typeface is more effective than most dazzling fonts easily available online. If nothing else, it can keep design plagiarists away. Also, custom lettering is more identifiable in a logo than a font downloaded off the internet.

29. Be easy to predict.

Your design won’t stand out from the crowd if it looks the same as what’s already out there. Aim to design a logo that is somewhat unfamiliar yet still relatable. It should suggest something: a story, a feeling, or an action.

30. Think of your designs as unparalleled.

While having confidence in your ability is good, putting yourself in the “best” category can hinder your growth. Your brilliance is as good as your last design. If you keep this in mind, you will strive harder to grow as a designer.

Premium Logo Tutorials

31. Logo Design: Creating a Vintage Mascot Logo from Scratch


This tutorial teaches you how to create a mascot logo from start to finish. It shows how to correctly structure a digital logo to be used for screen printing or embroidery. It also connects the design’s vintage vibe into modern design.

32. Logo Design Fundamentals: Simple and Solid Brand Marks


The instructor highlights how simplicity in logo design shouldn’t be underestimated. With basic shapes and colors, the tutorial teaches how to create a simple, yet strong, logo. It also imparts how to optimize communication with minimal and concise pieces of information.

33. Logo Design the Draplin Way: Building with Shape, Type, and Color


This tutorial that runs for over an hour shows how to make a family crest. It tackles the art of designing this personal logo – from background research and shape formation to font and color choices.

34. Logo Design Project Step by Step Walkthrough


This tutorial, as the name suggests, is a step-by-step documentation of creating a logo. It imparts tips, tricks, and guidelines from design conception to completion.

35. Logo Design Video Tutorial


The instructor recreates a video game logo using digital techniques every designer must learn. The video shows how to construct a grid background on an existing logo.

36. Creating an Environmentally Friendly Green Type Treatment


This class uses illustration to teach how to design logos using the Green type treatment. It also imparts tips and guidelines for eco-friendly treatments for other design elements.

37. Logo Design Process and Walkthrough for Vivid Ways


Chris Spooner teaches us the techniques and tricks to finish off a logo design using Adobe Illustrator. It especially highlights font and color section to make a simple yet sophisticated end product.

38. Papercraft Text Effect


This tutorial helps you effortlessly make a customized logo using stunning text effects. It also lets users test their logos using different colors and fonts.

39. Wooden Text Effect in Photoshop


This class, often recommended by top designers, delves deeper on how effects and textures can be used for logo creation. It lists down techniques and tricks that are very clear and easy to follow.

40. Windows Vista Logo Photoshop Tutorial


This tutorial, as the name suggests, is all about creating the Windows Vista logo using Photoshop. It provides a step-by-step instruction on how to properly create the mirror and glossy effects of the logo.

41. How to Create a Vintage Badge Logo with Illustrator and Photoshop


The designer offers tips, tricks, and techniques on how to create awesome logos with a vintage or retro vibe. The tutorial uses Adobe Photoshop and Illustrator to create a 70s type logo.

42. How to Create the Volkswagen Logo


This tutorial demonstrates how to recreate the iconic Volkswagen symbol. It highlights several techniques like layer styling, radial gradients, and lasso selection to reconstruct the famous brand logo.

43. Cool Music Logo on a Grunge Background


The instructor teaches how to create a logo intended for websites with a grunge style background. The tutorial focuses on tricks and techniques to make this type of logo pop.

44. Create Rainbow Logos with Warped Grids


The tutorial tackles how to use Warped Grids to make a logo more dynamic and flexible. It provides a step-by-step instruction on creating rainbow logos using the easy yet versatile Warped Grids technique.

45. Glowing and Sparkling Intense Light 3D Logo


The instructor teaches how to design and create a glowing or sparkling intense light three-dimensional logo. The tutorial shows different techniques and tips to produce the desired effect.

46. Logo Presentation Tutorial


This tutorial teaches how to correctly present logotype. It underlines the use of a macro photo simulation where the logo is printed on paper.

47. Creating a Crazy Cool Logo


This step-by-step tutorial demonstrates how to create quirky, out-of-the-box logo designs. It also provides practice on how to stop oneself from going over-the-top.

48. Dache: Logo Design Process


This is not a tutorial per se, but more of a case study on the makings of a logo. It focuses on the creative process of designing a logo from scratch.

49. Step by Step Logo


This is a comprehensive take on how to create a logo from start to finish. It highlights how to discover, develop, and implement an image until it becomes a logo.

50. Virtual DJ


This is a detailed tutorial on how to create a virtual DJ design. It tackles more than just logo-making, but all techniques and tools can be helpful in creating an actual logo.

With these rules, tips, and tricks, we’re certain your next logo will stand out from the crowd!

4 दशक बाद भी आखिर C/C++ क्‍यों हैं हमारे Syllabus में?

Why Learn C - C++ - Hindi

Why Learn C – C++

Why Learn C / C++ : आज विभिन्‍न प्रकार की जरूरतों को पूरा करने के लिए ढे़र सारी Modern and Advanced Programming Languages का विकास हो चुका है लेकिन फिर भी O-Level से लेकर MCA, M. Tech. व PhD तक के Syllabus में किसी न किसी रूप में C/C++ Programming Language को Included रखा गया है।


सरलतम शब्‍दों में इस क्‍यों का जवाब यही है कि C का विकास होने से पहले भी ढे़र सारी अन्‍य Programming Languages थीं जिन्‍हें विभिन्‍न प्रकार की जरूरतों को पूरा करने के लिए Develop किया गया था और उन में से कुछ Languages आज भी उन Universities के Syllabus में है जिन्‍होंने दसकों से अपना Syllabus Revise नहीं किया है। लेकिन Professional Level के Practical Projects में उन Programming Languages का उपयोग अब शायद ही कोई करता हो।

उदाहरण के लिए FORTRAN (FORmula TRANslation) नाम की Programming Language को IBM Company के Engineers व Scientists की एक Team ने Develop किया था, जिसे Develop करने का मूल उद्देश्‍य विभिन्‍न प्रकार के Scientific Formulas को Accuracy के साथ Process करना था ताकि वैज्ञानिकों को उनके Research Work से सम्‍बंधित जो Calculations करनी पड़ती थीं, वे ज्‍यादा जल्‍दी व Accurate हो सकें।

जिस काम के लिए FORTRAN को बनाया गया था, वो काम FORTRAN आज भी उतनी ही सक्षमता के साथ करता है लेकिन FORTRAN को वैज्ञानिकों द्वारा व वैज्ञानिकों के लिए ही बनाया गया था, इसलिए General Purpose Software बनाने के लिए वह कभी ज्‍यादा उपयोगी नहीं हो सकती थी, न ही कभी हो सकी।

इसी तरह से COBOL (COmmon Business Oriented Language) को बड़ी Companies व Government Level के Business, Finance व Administrative Systems से सम्‍बंधित Projects बनाने के लिए ही Develop किया गया था। इसीलिए COBOL का प्रयोग Scientific Tasks को आसानी से Complete करने के लिए नहीं किया जा सकता था।

यानी C का विकास होने से पहले तक जितनी भी Programming Languages को विकसित किया गया, वे सभी किसी न किसी एक Specific Purpose को ही पूरा कर सकते थे।

लेकिन जब C Language को विकसित किया गया, तो ऐसा कोई काम नहीं था, जिसे C Language द्वारा न किया जा सकता हो। इसीलिए दशकों बाद भी C Language को किसी भी Degree Level Course जैसे कि O-Level से PhD तक के Syllabus में Included रखा गया है क्‍योंकि C Language के Develop होने के बाद जितनी भी नई Programming Languages बनी हैं, उन सभी का आधार पर C Language ही है और यदि आपको C/C++ Languages आ अच्‍छा Knowledge है, तो आप दुनियां कि किसी भी Modern Programming Language को बड़ी ही आसानी से सीख व समझ सकते हैं।

अब क्‍योंकि आज जितनी भी Programming Languages Professional Development के लिए Use हो रही हैं, वे सभी C/C++ पर ही आधारित हैं इसलिए C/C++ के आने के बाद जितने भी Applications बनाए गए हैं, सभी की C/C++ Library जरूर उपलब्‍ध है। इसीलिए आज भी C/C++ के नए Standard बनाए जा रहे हैं जहां C11, C Language का Latest Standard है जिसे ISO/IEC द्वारा 2011 में Standardize किया गया है जबकि C++17, C++ Language का Latest Standard है, जिसे ISO/IEC द्वारा 2017 में Standardize किया गया है।

यानी आज भी आप जो कुछ भी किसी अन्‍य Modern Programming Language जैसे कि C# Programming Language या Java Programming Language में कर सकते हैं, वो सबकुछ C/C++ Languages में भी कर सकते हैं। इसलिए यदि आपको लगता है कि C/C++ अब Outdated हो चुकी हैं, तो आप पूरी तरह से गलत हैं।

आप एक बात अच्‍छी तरह से समझ लीजिए कि Languages कभी पुरानी नहीं होतीं। जैसे-जैसे Market में नए तरह के Hardware व Devices आती हैं, उनके अनुरूप उन Devices को Handle व Control करने के लिए विभिन्‍न Programming Languages में नई Libraries को Include किया जाता है, उनके लिए नए Standard बनाए जाते हैं और जरूरत पड़ने पर Language के Core में Modification या Improvements किए जाते हैं।

उदाहरण के लिए आज से 10 साल पहले तक Mobile Phones में WiFi की सुविधा नहीं होती थी। तब केवल BlueTooth, Infrared जैसी तकनीक के जरिए Mobile Phone पर Internet Use किया जाता था। इसलिए उस समय विभिन्‍न Programming Languages में BlueTooth, Infrared Hardware को Access & Manipulate करने के लिए इनसे सम्‍बंधित Libraries को Include किया गया था।

लेकिन अब लगभग सभी नए Mobile Phones से Infrared तकनीक को पूरी तरह से हटा दिया गया है और इसकी जगह WiFi तकनीक ने ले लिया है। इसलिए अब शायद ही कोई BlueTooth के जरिए अपने Mobile से Computer पर Internet Use करता होगा। क्‍योंकि अब WiFi Device के जरिए यही काम बिना कोई BlueTooth Configuration किए हुए बड़ी ही आसानी से लगभग Automatically हो जाता है। इसलिए अब Internet Access से सम्‍बंधित Mobile Apps Create करने के लिए विभिन्‍न Supported Programming Languages में WiFi से सम्‍बंधित Libraries को Add कर लिया गया है।

जबकि जैसे-जैसे Multi-Core CPUs व GPUs का विकास होता जा रहा है, इन्‍हें पूरी तरह से Use करने के लिए विभिन्‍न Programming Languages के Core में Modification किया जा रहा है ताकि वे Programming Languages Multitasking Capabilities से सम्‍बंधित Parallel Programming Features को Support कर सकें।

सरल शब्‍दों में कहें तो जैसे-जैसे नए Hardware आते जाते हैं, उनके अनुरूप ही सबसे पहले C/C++ LibrariesLanguage Constructs को विकसित किया जाता है क्‍योंकि आज तक दुनियां में सबसे ज्‍यादा Software C/C++ Languages का प्रयोग करते हुए ही बनाए गए हैं इसलिए पुराने Applications नए Hardware के साथ Compatible हो सकें, इसके लिए सबसे पहले C/C++ की Library को ही विकसित किया जाता है। साथ ही जब इन Language के Core में कोई Change करने की जरूरत होती है, तब ISO द्वारा C99, C11, C++11, C++14C++17 Standards को भी विकसित किया जाता है।

लेकिन यहां मूल रूप से समझने वाली बात यही है कि किसी भी Language के Core Construct में कभी कभार ही Changes करने की जरूरत पड़ती है। Basically तो हर नए Hardware व तकनीक को Support करने के लिए Language के नए Version के साथ केवल नई Libraries को ही Create करके Add किया जाता है।

उदाहरण के लिए 1999 में C Language का C99 Standard Define किया गया था। उसके बाद अगले 12 सालों तक कोई नया Version नहीं आया क्‍योंकि अगले 12 सालों तक जितने भी तरह के नए Hardware Develop हुए, उनसे सम्‍बंधित Libraries Create करके उन Hardware को आसानी से Access & Manipulate किया जा सकता था।

लेकिन जैसे ही 2005 के आसपास Internet Supported Mobile Phones, Infrared, BlueTooth, WiFi, Multi-Core CPUsGPUs जैसे नए Hardware युक्‍त Devices का चलन बढ़ा और ऐसा महसूस किया जाने लगा कि इन Hardware को बेहतर तरीके से Control करने के लिए C/C++ Languages के Core Constructs में Modification / Addition करने की जरूरत है, तो उन Recommendations को ISO के समक्ष प्रस्‍तुत किया गया और Standard के रूप में 2011 में C11 / C++11 आया।

इसलिए यदि आपको C/C++ Core Language का उपयुक्‍त ज्ञान है, तो आप किसी भी नए Hardware के लिए Application Software Develop कर सकते हैं। क्‍योंकि आपको केवल उस नए Hardware की Library को ही समझना होता है और उसे Access and Manipulate करने से सम्‍बंधित Features को समझते हुए Required जरूरत को पूरा करने वाला Application Create करना होता है।

उदाहरण के लिए यदि आप Device Driver, Operating System, Network System, Graphics या Game Programmer हैं और Desktop Computers के लिए Game Develop करते हैं, तो निश्चित रूप आपको C/C++ का अच्‍छा ज्ञान होगा क्‍योंकि System / Graphics / Game से सम्‍बंधित Software Applications को मूलत: C/C++ में ही Develop किया जाता है। अब यदि आपको Android Mobile के लिए Game Develop करना हो, तो आपको Compulsory रूप से Java सीखने की जरूरत नहीं है। आप चाहें तो केवल उन C/C++ Libraries को समझते हुए Native Android Game App Develop कर सकते हैं, जिनका प्रयोग करते हुए Android Device के GPUGraphics से सम्‍बंधित Features को Handle व Control किया जाता है।

जैसा C/C++ के साथ होता है, वैसा ही अन्‍य Modern Programming Languages के साथ भी होता है। यानी C# या Java जैसी Modern Programming Languages के Core Programming Constructs में भी मूलत: बहुत कम परिवर्तन होता है और हर नए Version में मूलत: कुछ नए Hardware and Feature Support के लिए कुछ नई Libraries को ही Add किया जाता है।

इसीलिए 4 दशक बाद भी C/C++ को आज भी O-Level से लेकर PhD तक पढ़ाया जाता है क्‍योंकि Core Language Construct में पिछले 40 सालों में कुछ ज्‍यादा परिवर्तन नहीं हुआ।

Core Language Construct से तात्‍पर्य Looping Statements, Conditional Statements, Variable, Constants, Structure, Class, Array आदि वे Core Concepts हैं, जो आज भी वैसे ही हैं जैसे तब थे जब C/C++ को पहली बार बनाया गया था।

लेकिन 4 दशक पहले BlueTooth या WiFi नहीं थे इसलिए इनको Access and Manipulate करने से सम्‍बंधित Libraries भी नहीं थीं। आज लगभग सभी Devices इन BlueTooth/WiFi के माध्‍यम से एक दूसरे के साथ Connected हैं, इसलिए इनसे सम्‍बंधित Smart Devices के लिए Smart Software बनाने की जरूरत होती है और इस जरूरत को पूरा करने के लिए इनसे सम्‍बंधित Libraries की जरूरत पड़ती है।

अब हम हमारे इस Article के Title का जवाब समझते हैं कि आखिर 4 दशक बाद भी C/C++ हमारे Syllabus में क्‍यों हैं?  

चूंकि C/C++ वर्तमान में भी Use की जाने वाली सबसे पुरानी Programming Language है। इसलिए इस Language का प्रयोग करते हुए दुनियां के सबसे ज्‍यादा Application Software Develop हुए हैं जो कि विभिन्‍न प्रकार की जरूरतों को पूरा करते हैं। इसीलिए अच्‍छे C/C++ Programmers की भविष्‍य में लम्‍बे समय तक काफी मांग रहने वाली है क्‍योंकि जिन Software को पिछले 40 सालों में C/C++ Programming Languages में बनाया गया है, उन्‍हें Manage, Maintain, ExtendUpgrade करने का काम केवल C/C++ Programmer ही कर सकते हैं।

इन Languages का प्रयोग Simple Digital Watch से लेकर RoboticsSatellites जैसे Advanced Artificial Intelligence से सम्‍बंधित Software में होता है क्‍योंकि ये अब तक की सबसे ज्‍यादा विकसित, Well Optimized, Fast व Hardware Level तक को Access & Manipulate करने में सक्षम Most Advanced Modern Programming Languages हैं जिनमें बने Applications को Run होने के लिए किसी Underlying Platform का होना Compulsory नहीं होता क्‍योंकि हम Device की जरूरत के अनुसार उसके लिए उसका खुद का Unique Platform बनाकर उसमें Application को Embed कर सकते हैं जैसा‍कि D2H, Remote Control, DVD Player, Refrigerator, Point to Point Antenna आ‍दि में होता है।

जबकि JavaC# जैसी Modern Programming Languages केवल उन्‍हीं System पर Run हो सकते हैं, जिन पर क्रमश: Java JRE या .NET CLR Platform Exist हो और हम C# Programming Language या Java Programming Language का प्रयोग करके Complete System Software नहीं बना सकते। इसलिए इनमें बने Applications को किसी Device में बिना C/C++ की मदद लिए हुए Embed नहीं कर सकते।

इसके अलावा C/C++ Compiler Based Languages हैं इसलिए इनकी Performance व Speed किसी भी अन्‍य Language की तुलना में ज्‍यादा होती है। इसी वजह से जितने भी Graphics Related Software बनते हैं, जिनमें ढ़ेर सारे Graphics, Sound, Multimedia, आदि का प्रयोग होता है, उन्‍हें C/C++ में ही बनाया जाता है। इसलिए जब भी कभी Graphics Related Software बनाने होते हैं, तब C/C++ का कोई Alternative नहीं होता।

अत: यदि आप Graphics, Multimedia, Game, Device Driver या Operating System Programmer बनना चाहते हैं, तो आपको C/C++ का बहुत अच्‍छा जानकार बनना ही होगा।

जरूरी नहीं है कि C/C++ का प्रयोग केवल इन्‍हीं Fields में होता है। आप Database Driven ऐसे Business Applications बनाने के लिए भी C/C++ को Use कर सकते हैं जो कि Network Based होते हैं और जहां Speed / Performance काफी महत्‍वपूर्ण होता है।

उदाहरण के लिए Stock Market या Ticket Reservation से सम्‍बंधित Applications पर प्रति सेकण्‍ड लाखों Request को Fulfill करना होता है। इसलिए इस तरह के Applications Develop करने के लिए भी आपके पास C/C++ से बेहतर कोई अन्‍य Programming Language नहीं है।

और क्‍योंकि सभी Modern Programming Languages को या तो C/C++ में ही Develop किया गया है या फिर C/C++ के Programming Constructs के आधार पर ही Develop किया गया है, इसलिए यदि आपको C/C++ का अच्‍छा ज्ञान होता है, तो आप बड़ी ही आसानी से किसी भी अन्‍य Modern General Purpose Programming Language जैसे कि C#, Java, Python, etc… को सीख सकते हैं।

इसी वजह से पिछले 40 सालों से O-Level से लेकर PhD तक सभी Degree Level Courses में C/C++ को Compulsory रूप से Included रखा गया है क्‍योंकि इनका भविष्‍य काफी Long Term है और जब तक John von Neumann के Model पर आधारित Computer Systems, Mobiles, Robots, etc… बनते रहेंगे, C/C++ अपना Important Role Play करते रहेंगे।

उम्‍मीद है इस पोस्‍ट को पढ़कर आप C/C++ के महत्‍व को थोड़ा और गहराई से समझ पाए होंगे और इन्‍हें और अच्‍छी तरह से सीखने पर ध्‍यान देंगे। क्‍योंकि IT Sector के किसी भी Field में Career बनाने की बात क्‍यों न हो, Job Interview के दौरान सबसे ज्‍यादा सवाल तो C/C++ Language पर ही आधारित होते हैं।

इसलिए इन दोनों Languages को फिर से सीखिए क्‍योंकि वास्‍तव में ज्‍यादातर लोगों को केवल वहम होता है कि उन्‍हें C/C++ आती है और ये वहम तभी खत्‍म होता है, जब वे दुबारा से C/C++ में छोटे-छोटे Practical Programs बनाने की कोशिश करना शुरू करते हैं। कहीं आप भी इस वहम का शिकार तो नहीं है, इसका पता आपको तभी चलेगा, जब आप एक बार फिर से C/C++ के विभिन्‍न Core Programming Concepts को Revise करना शुरू करेंगे।


Blog – ITeBooks in Hindi

Do Digital Marketing Jobs Pay More Salary? Data Says Yes

You might have heard that digital marketing jobs pay higher salaries. But is it true? Because it is possible that people who sell digital marketing training programs and courses  are the ones touting that digital marketing is the next big thing.

You might also think that digital marketing is just a hype and it will not last long. Instead of debating this topic with opinions, let’s look at the data and facts. I have collected data from various sources and presenting it to you in this article, so you can see the truth for yourself.

We will also try to understand why digital marketing is in high demand. We will look at the change in consumer behavior, why brands need to change their marketing strategy and finally, how we, the digital marketers can benefit from the changing times.

Why Digital Marketing?

The change in consumer behavior has been very fast in the past 3-5 years. You can see the change all around you. Millions of consumers have started using the internet. There are more than 400 million internet users in India right now. The internet usage has been accelerated by the penetration of smartphones and low-cost computers.

A recent world bank report revealed that 26% of the population in India has access to the internet already (and this is 2015). China has 50.3% and the USA has 74.6%. Many European countries have 90%+ internet penetration. Norway tops the list with around 97% of the population having internet access.

There is no reason why India won’t get to 80% penetration in the next 10-20 years. That would 3X the size of the digital marketing industry in India.

You can see that the blue line in the graph is taking an exponential curve. The next 400 million internet users will come faster than we expect. There is a long way to go and the road looks beautiful. (Now you know why many internet startups in India are being hyper-funded).

When I had access to broadband internet, it was in the 2nd year of college. I had dial-up access to the internet as early as 2004. Today there are 8x more internet users on the web! (I feel old!)

We are mostly talking about the digital marketing job opportunities in this article, but if you are a businessman, you can see that why you cannot ignore India as a market. Many online entrepreneurs have focused on selling products to American and European customers ignoring India as a potential market. I am betting big on my country.

New telecom players in India like Jio have disrupted the market and have made the internet a utility than a luxury. Tough competition has forced other telecom operators to reduce prices as well.

The change was not this fast when TV & Radio came along. It took decades for every home to have a TV. But today, each one of us has multiple internet devices and multiple internet connections.

This pace doesn’t seem to slow down. Elon Musk plans to launch internet satellites into the orbit with the help of SpaceX by 2019. This will enable a low-cost, high-speed broadband access to a huge portion of the unconnected world.

If consumer behavior has changed, businesses have to change. Customers are the ultimate boss for every business. Without being in sync with their needs and behavior, no business can survive.

Why Brands Need to Change their Marketing Strategy

There is a huge need for brands to start advertising on the digital medium. The new generation is watching YouTube and rarely turns on the TV. They read blogs and not newspapers. They use apps like Facebook, Instagram to connect with friends and family. Such two-way communication apps weren’t even possible before the internet.

Brands need to advertise their products at places where consumers hang around. If brands keep spending money on hoardings, TV ads and newspaper ads, they will not be able to survive, let alone grow their business.

This change has forced many CEOs and Co-founders of startup companies to learn and execute digital marketing themselves. Startups cannot afford to be slow and they need to adapt to the change in market conditions. There is already a huge growth in digital marketing spends in India. Here’s a chart from MediaNama & Group M.

You can see that the growth of digital marketing spends resembles the growth of internet users in India. But the spending is lagging behind the actual user growth. And the reason why the digital marketing spends are not as high as it should be is because of the lack of digital marketers.

A large percentage of companies are still stuck with traditional marketing. Unlike startups, founders of large organizations cannot focus on digital marketing themselves because there are so many other things to take care of.

Their only hope is to hire an expert digital marketer who can build a digital marketing team. But the big companies are not finding enough qualified candidates who are experts in digital marketing. Could it be true? Let’s look at the data again…

The Shortage of Digital Marketing Talent

According to a report by Kstart and YourStory, the digital marketing industry is growing at 40% year-on-year as compared to 5-6% growth in many other industries.

Quoting from the report:

For Startups, digital marketing is a more viable option than traditional media because even with a small budget, businesses can test the effectiveness of their marketing strategy, control costs, and reach out to targeted prospects.

It’s why every type of business (big and small, old and new) is recognizing the importance of leveraging digital marketing. Not surprising then, that the digital media industry is growing at 40% y/y growth when other industries are struggling at 5% or 6%. – Kstart Report

According to another survey done by Kstart, 66% of respondents believed that finding good talent was a major bottleneck because a very few people ‘get’ digital marketing. Others felt there wasn’t enough talent in the market. Companies are clearly feeling a shortage when it comes to hiring talented digital marketers.

I have seen it happen within the companies that I’ve worked with and the stats are saying the same. A recent article in Times of India also proved the same fact that digital marketing skills have high demand but low supply.

If you start looking for sources that prove the lack of supply in digital marketing skills, you will find plenty on the web. I have given only two examples above. But you will not find any report with stats that say otherwise.

And you don’t need a report to help you believe that the marketing landscape is changing. You can observe what’s going on around you, and predict what’s coming next.

The Various Digital Marketing Roles

Brands need digital marketers to run their marketing campaigns online. And they are ready to pay a good price for it because the money they invest in efficient digital marketing would be much less than traditional marketing.

If a candidate with 2-3 years experience in digital marketing is earning 5 to 10 lakhs per annum, the company will make more than what they spend on the digital marketing talent. For them its an investment, not an expense. That’s where your value as a digital marketer lies. You are the one who will help companies make more money with efficient digital marketing.

Small companies may need just one or two digital marketers to handle their campaigns. Large companies or well funded early stage startups will need a digital marketing team.

Some of the top roles in digital marketing available today are:

  • Digital Marketing Manager
  • Social Media Marketing Manager
  • SEO Expert
  • CRO Expert
  • Content Marketer
  • Email Marketer
  • Copywriter
  • Paid Ads Expert (Facebook & Google Ads)
  • Analytics Expert

If the organization is very big, the digital marketing manager will report to V.P of Marketing (or the Chief Marketing Officer). The titles may differ from place to place, but the nature of work remains the same.

This is how the digital marketing team is structured within the organization. If a company is small, multiple roles are taken up by the one digital marketer.

To learn more about the job specification of each role and how the digital marketing team would be structured, read this article: Digital Marketing Jobs & Career Opportunities in India.

What’s the Average Salary for Digital Marketers?

The salary of these positions differs with years of experience, the kind of company that is hiring and most importantly, the city in which you work. But I can confidently say that the salaries are definitely higher than other fields where the supply is more than the demand!

According to PayScale – an authoritative source of salary data, a digital marketer in Bangalore with a few years of experience will earn around 7.2 lakhs per annum. This is based on data collected from real people with real jobs, not an estimate.

In the past several working as a digital marketing manager in many startups, I’ve always got multiple job offers before joining any company – which is a clear indication that the demand is more than the supply. After I’ve left my last company Razorpay, they haven’t found a digital marketer to replace me yet!

I was being paid around 15-20 Lakhs per annum in the last 3 startups that I’ve worked for. The last offer I got was around 25 Lakhs per annum, which I declined, to work on my own projects.

Ready to Become a Digital Marketing Expert?

So it is time for you to become a digital marketer and become an expert on this subject. If you have digital marketing skills and do a bit of personal branding, there are plenty of awesome companies in India that would be ready to hire you! And you need not subscribe to expensive courses to become a digital marketer. You can become a self-made digital marketing expert.

I became an accidental digital marketing expert because I learned digital marketing to scale up my first motorcycling publication to 1m visitors a month. In the process of growing my blog, I learned social media marketing, SEO, email marketing and everything fell into place with my integrated digital marketing strategy.

Focus on learning and doing things. I’ve always recommended my students to start their own blog and practice digital marketing by running your own website. That’s how I became a digital marketer. That’s the easiest and fastest way to get started with learning digital marketing – and develop a passion for digital marketing.