<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Amar Prakash Pandey</title>
    <description>The latest articles on DEV Community by Amar Prakash Pandey (@amarlearning).</description>
    <link>https://dev.to/amarlearning</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F23962%2F6e085cb5-e7ce-4c47-abae-f4683fab4a13.jpg</url>
      <title>DEV Community: Amar Prakash Pandey</title>
      <link>https://dev.to/amarlearning</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/amarlearning"/>
    <language>en</language>
    <item>
      <title>We're Putting AI Everywhere Before It's Sustainable</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Sun, 08 Nov 2026 11:12:40 +0000</pubDate>
      <link>https://dev.to/amarlearning/were-putting-ai-everywhere-before-its-sustainable-5b5h</link>
      <guid>https://dev.to/amarlearning/were-putting-ai-everywhere-before-its-sustainable-5b5h</guid>
      <description>&lt;p&gt;Orignally posted on &lt;a href="https://amarpandey.me/blog/were-putting-ai-everywhere-before-its-sustainable/" rel="noopener noreferrer"&gt;amarpandey.me&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We are making an expensive, resource-intensive technology artificially accessible and encouraging mass adoption before we've established that its widespread use is economically and environmentally sustainable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Something about the current wave of AI adoption doesn't sit right with me.&lt;/p&gt;

&lt;p&gt;Every product is adding AI features. Existing products are being rebuilt around it, and developers keep finding creative ways to put it into problems that were already solved quite well.&lt;/p&gt;

&lt;p&gt;I get the excitement. AI is genuinely powerful. But I think we're getting carried away.&lt;/p&gt;

&lt;p&gt;I recently saw an expense-sharing app demo a voice assistant. You say, "Paid 400 for dinner, split into 4," and it creates the expense.&lt;/p&gt;

&lt;p&gt;How much better is that than typing into a few fields? An amount, a description and a number of people is a simple data-entry problem. Traditional software handles it perfectly well. The voice feature looks great in a demo, but it adds complexity and compute cost without saving the user much of anything.&lt;/p&gt;

&lt;p&gt;You'll find the same pattern in task managers, note-taking apps, calendars and analytics tools. Sometimes I wonder whether we're making products better or just making them look more impressive.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Just because we can build something with AI doesn't mean we should.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Are we solving problems or just finding places to use AI?
&lt;/h2&gt;

&lt;p&gt;Tax calculations, input validation, payments, balances and rate limiting all have predictable inputs and well-defined outputs. Conventional software solves them faster, cheaper, more reliably, and in a way you can actually debug.&lt;/p&gt;

&lt;p&gt;Why add an expensive, probabilistic component when a deterministic one already works?&lt;/p&gt;

&lt;p&gt;That doesn't mean AI has no place in these products. Scanning a receipt, pulling line items out of a restaurant bill, or answering questions about your spending are genuinely good uses. They make hard things easy.&lt;/p&gt;

&lt;p&gt;But using AI to solve a problem that was difficult is very different from using AI to replace an interaction that was already simple. I think we've started confusing the two.&lt;/p&gt;

&lt;p&gt;The question shouldn't be how much AI we can fit into a product. It should be whether AI makes that product meaningfully better.&lt;/p&gt;

&lt;h2&gt;
  
  
  Accessible isn't the same as sustainable
&lt;/h2&gt;

&lt;p&gt;AI isn't free, even when the price makes it feel that way.&lt;/p&gt;

&lt;p&gt;Every inference runs on specialised hardware, electricity and infrastructure. Yet AI is being handed out through cheap subscriptions, generous limits and aggressive API pricing, funded by an enormous infrastructure race. The price users pay doesn't necessarily reflect what it costs to produce, let alone its environmental cost.&lt;/p&gt;

&lt;p&gt;There's a difference between a technology getting cheaper through better engineering and a technology being made cheap to accelerate adoption.&lt;/p&gt;

&lt;p&gt;This matters for anyone building products. Traditional software can serve more users without its costs growing at the same rate. A product that calls a model on every interaction has costs that grow with usage. Put AI into interactions that never needed it and you've added cost without adding value. You can have a great product, growing adoption, and still struggle to make the business work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cheaper AI doesn't mean less consumption
&lt;/h2&gt;

&lt;p&gt;AI is getting more efficient. Models are smaller, infrastructure is better, and the cost of a given level of performance keeps falling.&lt;/p&gt;

&lt;p&gt;But as it gets cheaper, we find more reasons to use it. Tasks that never justified a model call suddenly do. Features with marginal value get shipped anyway.&lt;/p&gt;

&lt;p&gt;Economists call this the &lt;strong&gt;Jevons paradox&lt;/strong&gt;: when something becomes more efficient to use, total consumption can rise enough to cancel out the gains. The &lt;a href="https://www.iea.org/reports/key-questions-on-energy-and-ai/executive-summary" rel="noopener noreferrer"&gt;International Energy Agency&lt;/a&gt; describes exactly this: energy per AI task is falling sharply, while total electricity use from AI data centres keeps climbing.&lt;/p&gt;

&lt;p&gt;So are we making AI more efficient, or just making it possible to consume a lot more of it?&lt;/p&gt;

&lt;h2&gt;
  
  
  The environmental cost we're not talking about enough
&lt;/h2&gt;

&lt;p&gt;AI isn't just software running in the cloud. It runs on data centres, chips, cooling systems, power grids and water, and every one of those has a physical footprint, from manufacturing the hardware to disposing of it when it's obsolete.&lt;/p&gt;

&lt;p&gt;A single text query isn't an environmental disaster. But billions of them, plus image, video and agentic workloads that cost far more, add up. And we're building new infrastructure as fast as we can to keep up with demand.&lt;/p&gt;

&lt;p&gt;I'm not saying AI isn't worth these resources. I'm saying we should ask whether each new use case is. Does another AI summary, another voice interface, another automated trivial interaction justify what it takes to run?&lt;/p&gt;

&lt;p&gt;Sometimes, yes. Quite often, I suspect not.&lt;/p&gt;

&lt;h2&gt;
  
  
  The middle ground
&lt;/h2&gt;

&lt;p&gt;Most conversations about AI land in one of two camps. The maximalists want an LLM behind every button and text box. The sceptics dismiss it entirely. I don't agree with either.&lt;/p&gt;

&lt;p&gt;My view is simpler: &lt;strong&gt;use the right tool for the job.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If a problem is deterministic, such as calculations, validation, state or business rules, use deterministic software. If it involves ambiguity, unstructured data, language or reasoning, AI can be an incredible tool, and there's no reason to avoid it.&lt;/p&gt;

&lt;p&gt;I don't want to build software without AI. I want to build software that uses AI where it makes sense.&lt;/p&gt;

&lt;h2&gt;
  
  
  The goose and the golden eggs
&lt;/h2&gt;

&lt;p&gt;I doubt the people steering this, at tech companies or in governments, are unaware of the costs. But countries are racing each other, companies are racing for dominance, and nobody wants to slow down first. Add our fascination with what AI can do next, and it's easy to stop asking what it takes to get there.&lt;/p&gt;

&lt;p&gt;It reminds me of the goose that laid golden eggs. Its owner wasn't content with one egg a day, so he killed it to get all the gold at once.&lt;/p&gt;

&lt;p&gt;We're so focused on extracting everything AI can offer that we're paying too little attention to what sustains it.&lt;/p&gt;

&lt;h2&gt;
  
  
  We're not there yet
&lt;/h2&gt;

&lt;p&gt;I believe AI has an extraordinary future in science, medicine, accessibility and much more. I'm excited about it.&lt;/p&gt;

&lt;p&gt;But not every app needs to be an AI app, and not every interaction needs an inference call. I'd rather we spend this time making AI genuinely cheaper and more efficient, reducing its energy and water use, and being honest about its real costs, before putting it in everyone's hands by default.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Widespread adoption should follow genuine technological and environmental progress, not precede it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Perhaps the next big step in AI isn't finding more things to use it for.&lt;/p&gt;

&lt;p&gt;Perhaps it's learning where we don't need it at all.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sustainability</category>
      <category>software</category>
    </item>
    <item>
      <title>4TB RAM, Yet an OOM Error? Debugging a Spark Memory Mystery</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Tue, 01 Apr 2025 14:55:58 +0000</pubDate>
      <link>https://dev.to/amarlearning/httpsamarpandeymeblog4tb-ram-yet-an-oom-error-debugging-a-spark-memory-mystery-1c0</link>
      <guid>https://dev.to/amarlearning/httpsamarpandeymeblog4tb-ram-yet-an-oom-error-debugging-a-spark-memory-mystery-1c0</guid>
      <description></description>
      <category>dataengineering</category>
      <category>performance</category>
      <category>apachespark</category>
      <category>failure</category>
    </item>
    <item>
      <title>Explain "binary compatibility" like I'm five</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Mon, 05 Jul 2021 16:48:44 +0000</pubDate>
      <link>https://dev.to/amarlearning/explain-binary-compatibility-like-i-m-five-36l1</link>
      <guid>https://dev.to/amarlearning/explain-binary-compatibility-like-i-m-five-36l1</guid>
      <description>&lt;p&gt;After refactoring some files, we found out that there is one unused method in code, but  we cannot remove it since, We don't want to break binary compatibilty.&lt;/p&gt;

</description>
      <category>explainlikeimfive</category>
    </item>
    <item>
      <title>Finger Detection and Tracking using OpenCV and Python</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Sat, 28 Jul 2018 20:27:53 +0000</pubDate>
      <link>https://dev.to/amarlearning/finger-detection-and-tracking-using-opencv-and-python-586m</link>
      <guid>https://dev.to/amarlearning/finger-detection-and-tracking-using-opencv-and-python-586m</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR. Code is &lt;a href="https://github.com/amarlearning/Finger-Detection-and-Tracking" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Finger detection is an important feature of many computer vision applications. In this application, A histogram based approach is used to separate out the hand from the background frame. Thresholding and Filtering techniques are used for background cancellation to obtain optimum results.&lt;/p&gt;

&lt;p&gt;One of the challenges that I faced in detecting fingers is differentiating a hand from the background and identifying the tip of a finger. I’ll show you my technique for tracking a finger, which I used in this project. To see finger detection and tracking in action check out this video.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/P3dUePye_-k" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;In an application where you want to track a user’s hand movement, skin color histogram will be very useful. This histogram is then used to subtracts the background from an image, only leaving parts of the image that contain skin tone.&lt;/p&gt;

&lt;p&gt;A much simpler method to detect skin would be to find pixels that are in a certain RGB or HSV range. If you want to know more about this approach follow &lt;a href="https://docs.opencv.org/3.4.2/df/d9d/tutorial_py_colorspaces.html" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The problem with the above approach is that changing light conditions and skin colors can really mess with the skin detection. While on the other hand, Histogram tends to be more accurate and takes into account the current light conditions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbs96ojb46i5bvqkyfy5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbs96ojb46i5bvqkyfy5.png" alt="Hand over the rectangles" width="800" height="668"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Green rectangles are drawn on the frame and the user places their hand inside these rectangles. Application is taking skin color samples from the user’s hand and then creates a histogram.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The rectangles are drawn with the following function:&lt;/em&gt;&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;There’s nothing too complicated going on here. I have created four arrays &lt;strong&gt;&lt;code&gt;hand_rect_one_x&lt;/code&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;code&gt;hand_rect_one_y&lt;/code&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;code&gt;hand_rect_two_x&lt;/code&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;code&gt;hand_rect_two_y&lt;/code&gt;&lt;/strong&gt; to hold the coordinates of each rectangle. The code then iterates over these arrays and draws them on the frame using &lt;strong&gt;&lt;code&gt;cv2.rectangle&lt;/code&gt;&lt;/strong&gt;. Here &lt;strong&gt;&lt;code&gt;total_rectangle&lt;/code&gt;&lt;/strong&gt; is just the length of the array i.e. &lt;strong&gt;&lt;code&gt;9&lt;/code&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Now that the user understands where to place his or her palm, the succeeding step is to extract pixels from these rectangles and use them to generate an HSV histogram.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;Here function transforms the input frame to HSV. Using Numpy, we create an image of size &lt;strong&gt;&lt;code&gt;[90 * 10]&lt;/code&gt;&lt;/strong&gt; with &lt;strong&gt;&lt;code&gt;3&lt;/code&gt;&lt;/strong&gt; color channels and we name it as &lt;strong&gt;ROI&lt;/strong&gt; &lt;em&gt;(Region of Intrest)&lt;/em&gt;. It then takes the 900-pixel values from the green rectangles and puts them in the ROI matrix.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;&lt;code&gt;cv2.calcHist&lt;/code&gt;&lt;/strong&gt; creates a histogram using the ROI matrix for the skin color and &lt;strong&gt;&lt;code&gt;cv2.normalize&lt;/code&gt;&lt;/strong&gt; normalizes this matrix using the norm Type &lt;strong&gt;&lt;code&gt;cv2.NORM_MINMAX&lt;/code&gt;&lt;/strong&gt;. Now we have a histogram to detect skin regions in the frames.&lt;/p&gt;

&lt;p&gt;Now that the user understands where to place his or her palm, the succeeding step is to extract pixels from these rectangles and use them to generate an HSV histogram.&lt;/p&gt;

&lt;p&gt;Now that we hold a skin color histogram we can use it to find the components of the frame that contains skin. OpenCV provides us with a convenient method, &lt;strong&gt;&lt;code&gt;cv2.calcBackProject&lt;/code&gt;&lt;/strong&gt;, that uses a histogram to separate features in an image. I used this function to apply the skin color histogram to a frame. If you want to read more about back projection, you can read from &lt;a href="https://docs.opencv.org/master/dc/df6/tutorial_py_histogram_backprojection.html" rel="noopener noreferrer"&gt;here&lt;/a&gt; and &lt;a href="https://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/back_projection/back_projection.html" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;In the first two lines, I changed the input frame to HSV and then applied &lt;strong&gt;&lt;code&gt;cv2.calcBackProject&lt;/code&gt;&lt;/strong&gt; with the skin color histogram &lt;strong&gt;&lt;code&gt;hist&lt;/code&gt;&lt;/strong&gt;. Following that, I have used Filtering and Thresholding function to smoothen the image. Lastly, I masked the input frame using the &lt;strong&gt;&lt;code&gt;cv2.bitwise_and&lt;/code&gt;&lt;/strong&gt; function. This final frame should just contain skin color regions of the frame.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffccv9icmjdom91uylfab.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffccv9icmjdom91uylfab.png" alt="Hand seperated from background (1)" width="800" height="681"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc6c2gvcl8702bq87ihzb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc6c2gvcl8702bq87ihzb.png" alt="Hand seperated from background (2)" width="800" height="689"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now we have a frame with skin color regions only, but what we really want is to find the location of a fingertip. Using OpenCV you can find contours in a frame if you don’t know what contour is you can read &lt;a href="https://docs.opencv.org/3.4.2/d3/d05/tutorial_py_table_of_contents_contours.html" rel="noopener noreferrer"&gt;here&lt;/a&gt;. Using contours you can find convexity defects, which will be potential fingertip location.&lt;/p&gt;

&lt;p&gt;In my application, I needed to find the tip of a finger with which a user is aiming. To do this I determined the convexity defect, which is furthest from the centroid of the contour. This is done by the following code:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkynmnwmqgw9cx4wj0jy5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkynmnwmqgw9cx4wj0jy5.png" alt="Contour in Frame (1)" width="800" height="680"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fovzk2u78ibfg05ajlbp3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fovzk2u78ibfg05ajlbp3.png" alt="Contour in Frame (2)&lt;br&gt;
" width="800" height="676"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then it determines the largest contour. For the largest contour, it finds the hull, centroid, and defects.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famom6fm58v5wrb1r5537.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famom6fm58v5wrb1r5537.png" alt="Defects in red circle and Centroid in purple circle" width="800" height="684"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now that you have all these defects you find the one that is farthest from the center of the contour. This point is assumed to be the pointing finger. The center is purple and the farthest point is red. And there you have it, you’ve found a fingertip.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkn2e32krcij6beivabrr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkn2e32krcij6beivabrr.png" alt="Centroid in purple color and Farthest point in red color" width="800" height="682"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All hard part is done up until now, now all we have to do is to create a &lt;strong&gt;&lt;code&gt;list&lt;/code&gt;&lt;/strong&gt; to store the changed location of the &lt;strong&gt;&lt;code&gt;farthest_point&lt;/code&gt;&lt;/strong&gt; in the frame. It’s up to you that how many changed points you want to store. I am storing only &lt;strong&gt;&lt;code&gt;20&lt;/code&gt;&lt;/strong&gt; points.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1l1xyvsi3g0h4gpm23nt.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F1l1xyvsi3g0h4gpm23nt.jpg" alt="Finger Detection and Tracking using OpenCV and Python&lt;br&gt;
" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lastly, thank you for reading this post. For more awesome posts, you can also follow me on Twitter — &lt;a href="https://twitter.com/iamarpandey" rel="noopener noreferrer"&gt;iamarpandey&lt;/a&gt;, Github — &lt;a href="https://github.com/amarlearning" rel="noopener noreferrer"&gt;amarlearning&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Happy coding! 🤓&lt;/p&gt;

</description>
      <category>opencv</category>
      <category>imageprocessing</category>
      <category>fingerdetection</category>
      <category>oss</category>
    </item>
    <item>
      <title>Creating a new account automatically follows everyone in dev.to?</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Thu, 12 Jul 2018 09:30:31 +0000</pubDate>
      <link>https://dev.to/amarlearning/creating-a-new-account-automatically-follows-everyone-in-devto-14fn</link>
      <guid>https://dev.to/amarlearning/creating-a-new-account-automatically-follows-everyone-in-devto-14fn</guid>
      <description></description>
      <category>discuss</category>
      <category>devto</category>
    </item>
    <item>
      <title>Why it is not possible to extend a final class in Java?</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Thu, 28 Jun 2018 09:58:32 +0000</pubDate>
      <link>https://dev.to/amarlearning/why-it-is-not-possible-to-extend-a-final-class-in-java-5467</link>
      <guid>https://dev.to/amarlearning/why-it-is-not-possible-to-extend-a-final-class-in-java-5467</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fencrypted-tbn0.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRWYlCyhV9abZM-JfQgZvZ1hURdClWQlnTFh4WR_rpjA5gq8rih" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fencrypted-tbn0.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRWYlCyhV9abZM-JfQgZvZ1hURdClWQlnTFh4WR_rpjA5gq8rih" alt="why?" width="311" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>explainlikeimfive</category>
      <category>java</category>
      <category>oops</category>
    </item>
    <item>
      <title>Explain "Data Crunching" Like I'm Five</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Thu, 05 Apr 2018 08:37:10 +0000</pubDate>
      <link>https://dev.to/amarlearning/explain-data-crunching-like-im-five-100a</link>
      <guid>https://dev.to/amarlearning/explain-data-crunching-like-im-five-100a</guid>
      <description>&lt;p&gt;Is there any difference between &lt;strong&gt;Data Crunching&lt;/strong&gt; and &lt;strong&gt;Database Crunching&lt;/strong&gt;? If you know any good resources where I can read more about it please share. &lt;/p&gt;

</description>
      <category>explainlikeimfive</category>
      <category>data</category>
      <category>crunching</category>
      <category>database</category>
    </item>
    <item>
      <title>Explain Passwordless SSH Login In Linux Like I'm Five</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Tue, 27 Mar 2018 12:21:01 +0000</pubDate>
      <link>https://dev.to/amarlearning/explain-password-less-connection-in-linux-like-im-five-27ge</link>
      <guid>https://dev.to/amarlearning/explain-password-less-connection-in-linux-like-im-five-27ge</guid>
      <description></description>
      <category>explainlikeimfive</category>
      <category>linux</category>
      <category>authentication</category>
    </item>
    <item>
      <title>Can we use a good configuration gaming laptop for programming?</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Mon, 26 Feb 2018 07:56:31 +0000</pubDate>
      <link>https://dev.to/amarlearning/can-we-use-a-good-configuration-gaming-laptop-for-programming--n03</link>
      <guid>https://dev.to/amarlearning/can-we-use-a-good-configuration-gaming-laptop-for-programming--n03</guid>
      <description>&lt;p&gt;Currently, I am using an Intel i3- 3rd generation laptop with 4Gb of Ram. Now I am willing to purchase a new laptop for programming purpose (Machine Learning and application development).&lt;/p&gt;

&lt;p&gt;I have seen many laptops on the internet with the good configuration in a different price range. But I find this &lt;a href="https://www.amazon.in/Apple-MacBook-MLH32HN-Laptop-Graphics/dp/B01N2NJCTJ/ref=pd_cp_147_2/259-2965079-3377937?_encoding=UTF8&amp;amp;psc=1&amp;amp;refRID=1QP73DG6MTMHYFEB02FA" rel="noopener noreferrer"&gt;Apple MacBook Pro MLH32HN/A Laptop 2016&lt;/a&gt; the best laptop in range.&lt;/p&gt;

&lt;p&gt;But then my elder brother suggested me to buy this &lt;a href="https://www.amazon.in/Dell-15-7567-i7-7700HQ-Backlight/dp/B0759KKWHS/ref=pd_cp_147_3?_encoding=UTF8&amp;amp;psc=1&amp;amp;refRID=8XSQPF0A5J2JPMEJSYDS" rel="noopener noreferrer"&gt;Dell Inspiron 15 7000 7567&lt;/a&gt; because it has better configuration then Macbook pro and price is also less.&lt;/p&gt;

&lt;p&gt;Now my question is which laptop should I buy, considering that I don't play computer games and will use the laptop only for programming purpose.&lt;/p&gt;

</description>
      <category>discuss</category>
    </item>
    <item>
      <title>Explain this(Blockchain and it's application) Like I'm Five</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Fri, 16 Feb 2018 06:19:33 +0000</pubDate>
      <link>https://dev.to/amarlearning/explain-thisblockchain-and-its-application-like-im-five--4io9</link>
      <guid>https://dev.to/amarlearning/explain-thisblockchain-and-its-application-like-im-five--4io9</guid>
      <description></description>
      <category>explainlikeimfive</category>
    </item>
    <item>
      <title>Spring Boot With Weblogic and Oracle Database</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Sat, 06 Jan 2018 07:01:50 +0000</pubDate>
      <link>https://dev.to/amarlearning/spring-boot-with-weblogic-and-oracle-database-2iaj</link>
      <guid>https://dev.to/amarlearning/spring-boot-with-weblogic-and-oracle-database-2iaj</guid>
      <description>&lt;p&gt;Can we integrate Spring Boot with WebLogic 12.1.2 server and with Oracle database?&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>java</category>
      <category>springboot</category>
      <category>weblogic</category>
    </item>
    <item>
      <title>Hi, I'm Amar Prakash Pandey</title>
      <dc:creator>Amar Prakash Pandey</dc:creator>
      <pubDate>Sun, 02 Jul 2017 08:14:06 +0000</pubDate>
      <link>https://dev.to/amarlearning/hi-im-amar-prakash-pandey</link>
      <guid>https://dev.to/amarlearning/hi-im-amar-prakash-pandey</guid>
      <description>&lt;p&gt;I have been coding for 3 years.&lt;/p&gt;

&lt;p&gt;You can find me on GitHub as &lt;a href="https://github.com/amarlearning"&gt;amarlearning&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I live in Chennai.&lt;/p&gt;

&lt;p&gt;Currently, doing my Google Summer of Code Intern under TEAMMATES @ National University Of Singapore.&lt;/p&gt;

&lt;p&gt;I mostly program in these languages: JavaScript, Python, C++, Java.&lt;/p&gt;

&lt;p&gt;I am currently learning more about Refactoring: Improving design of existing code.&lt;/p&gt;

&lt;p&gt;Nice to meet you.&lt;/p&gt;

</description>
      <category>introductions</category>
      <category>amarlearning</category>
      <category>opensource</category>
      <category>gsoc</category>
    </item>
  </channel>
</rss>
