<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Vanshika Arora on Medium]]></title>
        <description><![CDATA[Stories by Vanshika Arora on Medium]]></description>
        <link>https://medium.com/@vanshikaa937?source=rss-89df44efa52------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*IeWZhgYnnLSsqo6g4VQGHQ.jpeg</url>
            <title>Stories by Vanshika Arora on Medium</title>
            <link>https://medium.com/@vanshikaa937?source=rss-89df44efa52------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 06:28:28 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@vanshikaa937/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[The 600-Second Trap: The Luxury We Never Asked For]]></title>
            <link>https://medium.com/@vanshikaa937/the-600-second-trap-the-luxury-we-never-asked-for-a886cb3566a0?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/a886cb3566a0</guid>
            <category><![CDATA[indienstartup]]></category>
            <category><![CDATA[business]]></category>
            <category><![CDATA[10-minute-delivery]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Sat, 21 Feb 2026 11:48:25 GMT</pubDate>
            <atom:updated>2026-02-21T11:48:25.541Z</atom:updated>
            <content:encoded><![CDATA[<p>The 600-Second Trap: The Luxury We Never Asked For</p><p>It <strong>takes a country generations to build a supply chain from factory to storefront. It takes a VC-funded app six months to dismantle it.</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*c8gwxap99R-iei5hhpwGQQ.png" /></figure><h3>The Man Who Sold the Future</h3><h3>The Rise and Stall of Gupta Ji</h3><p>Gupta Ji wasn’t just a shopkeeper to me, he was a hustler before “hustle culture” had a hashtag.</p><p>I remember seeing him in his prime. He had one goal: to carve out a name for himself in the cutthroat cloth markets of MG Road. He did it all the kind of grit you don’t see in app interfaces. He borrowed capital on handshakes, took risks that would keep most of us awake, and spent midnights personally handing out pamphlets on street corners.</p><p>He wasn’t just selling fabric. When he tucked his kids into bed, he was dreaming of a playground for them, a solid home for his family, and a legacy he could pass down. He worked harder every year. He did everything “the right way.”</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-cuOGTLdEnh1Wofte_UgVA.png" /><figcaption>A legacy built on handshakes and midnight shifts. In the era of the 10-minute timer, the face of the local merchant is becoming a ghost in his own shop.</figcaption></figure><p>Until the day his hard work simply couldn’t pay off anymore…</p><h3>The Monopoly of Convenience</h3><p>We are witnessing a strategic silence. Right now, giant platforms are burning billions in investor money to make prices <strong>“too good to be true.”</strong> They aren’t just giving us a discount, they are subsidizing the destruction of the shop on the corner.</p><p>They burn money today so they can overcharge us tomorrow, once the streets are empty of options and Gupta Ji has been forced to pull down the shutters for the last time.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Gm97bHMoz-TTQg8LqAH1Ig.png" /><figcaption>The subsidized war: An algorithm doesn’t need to turn a profit; it only needs to outlast the neighbor on the corner.</figcaption></figure><h3>The Damming of the Dream</h3><p>The market used to have a natural flow a ladder anyone could climb. One generation started in retail, the next moved to wholesale, and the third owned the factory. It was the “Indian Dream.”</p><p>Now, that flow has been dammed.</p><p>In this new “gig economy,” we aren’t creating businesses; we’re creating dependencies. We are told “Our New India” is growing, but I find myself asking: <strong>Growing for whom?</strong> If the rich get richer while the neighborhood shop dies, is that progress or just a consolidation of power?</p><blockquote><strong>The thought of a country with no independent supply chain where every link from factory to front door is owned by a single boardroom honestly scares me. It should scare us all. Because when the local retailer disappears, the ladder we all hope to climb disappears with them.</strong></blockquote><h3>The Luxury We Never Asked For</h3><p>We have to ask ourselves: Is getting a packet of chips in 600 seconds actually a luxury? Or have we just been trained to believe that waiting is a failure?</p><p>Every time we hit “order,” We are paying a <strong>Health Tax</strong> we didn’t sign up for. We live in the “Diabetes Capital of the World,” yet we’ve replaced a 10-minute walk to the <em>Sabzi Wale Bhaiya</em> with a 10-minute countdown on a screen. We are not just hurting his pocket, We are hurting our own heart literally and metaphorically.</p><p>Then there’s the <strong>Patience Deficit.</strong> When did we become this person that if rider takes twelve minutes instead of ten we feel a flicker of unearned annoyance.</p><p>I miss the <strong>Lost Connection</strong>. I miss the <em>Tehl ke jaana</em>. There was a rhythm to walking down the street, the small-talk bargaining with the vendor, the random “hello” to a neighbor. That’s the social fabric of life, and We are letting an algorithm shred it for the sake of staying in the <em>comfort.</em></p><h3>The Mirror Moment</h3><p>We are trading long-term community stability for short-term dopamine hits.</p><p>And here’s the part that haunts me: That <em>Sabzi Wale Bhaiya</em>? If he goes out of business, he doesn’t just vanish. He joins the gig force. He becomes the shadow at my door at 11 PM, handing me a carton of milk because I was too “busy” to walk 500 meters. I’ve turned a business owner into my personal errand runner.</p><p>The question isn’t about economics anymore; it’s about who I want to be. <strong>Are we willing to trade the soul of our neighborhood for 10 minutes of convenience?</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0uBCztfQCe7LuxIm2Dv7lA.png" /><figcaption>The generational ladder from retail to factory is glitching. When we replace business owners with gig workers, we trade long-term mobility for short-term speed.</figcaption></figure><blockquote>“Every time I visit home, I see another shutter down. Next time I’m back, I’m putting my shoes on. I’m going for that walk. Because the man who has run that corner shop since I was a kid deserves more than a ‘delivered’ notification he deserves to know he hasn’t been forgotten.”</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a886cb3566a0" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[When Humans Tried to Catch Light]]></title>
            <link>https://medium.com/@vanshikaa937/when-humans-tried-to-catch-light-6aa49a8701dd?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/6aa49a8701dd</guid>
            <category><![CDATA[physics]]></category>
            <category><![CDATA[science]]></category>
            <category><![CDATA[speed-of-light]]></category>
            <category><![CDATA[experiment]]></category>
            <category><![CDATA[science-fiction]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Sun, 17 Aug 2025 17:00:04 GMT</pubDate>
            <atom:updated>2025-08-17T17:26:40.139Z</atom:updated>
            <content:encoded><![CDATA[<blockquote><em>“What if I told you the speed of light the fastest thing in the universe was first hunted down with nothing more than lanterns, shutters, and a spinning wheel?</em></blockquote><p>Let’s rewind. It’s a winter evening in 17th-century Italy. Galileo Galilei the man who gave us the telescope is staring at a lantern in his hand. He’s wondering:</p><p><strong><em>Does light move instantly? Or does it take time, like sound?</em></strong></p><p>So he comes up with a plan. He and his assistant climb onto two distant hills, each holding a shuttered lantern. Galileo uncovers his lantern. The moment his assistant sees it, he uncovers his own. If there’s a delay, Galileo could measure the speed of light.</p><p>But every time they try, the reply comes back too fast. To Galileo, light seems instant. His tools aren’t enough. Still, he plants the seed:</p><p><strong><em>Light has a speed. Someday, someone will measure it.</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1zznVopZ3JtRPAVrVja6_w.png" /></figure><p>— — — —- *Fast — -—- forward— — -—200 — -— — years— -— — later.*— — — —</p><p>Imagine stepping into a time machine and finding yourself in the midst of 19th-century France, standing alongside the brilliant physicist Hippolyte Fizeau inside his laboratory. And unlike Galileo, Fizeau has a new idea and a machine. Picture it: a bright lamp, <strong>a toothed wheel</strong> spinning faster and faster,<strong> a mirror placed eight kilometers away</strong>, and a telescope aimed straight at it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jYyUGMOOpy9iTJvk2H9T5Q.png" /><figcaption>Fizeau’s experiment with light source, teethed wheel and a reflecting surface.</figcaption></figure><p>Here’s how it works:</p><p>The lamp’s beam passes through a gap in the wheel. It shoots off to the distant mirror and comes back. If the wheel spins slowly, the light slips back through the same gap, and Fizeau sees it flicker. But as the wheel spins faster, the returning beam doesn’t find the gap. It slams into a tooth instead and disappears.</p><p>That’s the moment. The missing light tells him:<strong> the wheel has turned by exactly one tooth in the time it took light to travel to the mirror and back</strong>.</p><p>Fizeau scribbles the math: number of teeth, speed of rotation, distance to the mirror. His result? <strong>315,000 kilometers per second.</strong> A little higher than the modern value, but close enough to shock the world.</p><p>The idea was amazing and genious. It could measure the speed of light which is the fastest anything could be. And did it all with just the basic setup.</p><blockquote>Galileo tried with lanterns on hills. Fizeau tried with a spinning wheel and a mirror. “Both chasing the same mystery.”</blockquote><p>And that mystery? It didn’t end there. Their work lit the path that led to Einstein(E=mc2), to relativity, and to the modern universe we know today.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6aa49a8701dd" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Google Summer of Code’19 Final Post]]></title>
            <link>https://medium.com/@vanshikaa937/google-summer-of-code19-final-post-d78e601ea39d?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/d78e601ea39d</guid>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[wikimedia-commons]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[wikimedia]]></category>
            <category><![CDATA[google-summer-of-code]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Sat, 24 Aug 2019 14:35:55 GMT</pubDate>
            <atom:updated>2020-07-07T12:15:52.943Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*5kNFeaNTH-cJ4FeGlekcDA.png" /></figure><h3>GSoC’19 — Wikiemdia</h3><p><strong>Project Synopsis (</strong><a href="https://summerofcode.withgoogle.com/projects/#6161341805494272"><strong>Link</strong></a><strong>)</strong></p><h3>About the App</h3><p>The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Wikimedia Commons accepts only freely licensed media files. Users can upload images and then add various tags specific to them such as category, title, description, and license. Also Wikimedia Commons has won the <strong><em>“Coolest Tool” award at </em></strong><a href="https://wikimania.wikimedia.org/wiki/2019:Program"><strong><em>Wikimania 2019</em></strong></a><strong><em> in the Mobile category.</em></strong></p><h3>About the Project</h3><p>The project aims to move towards Structured Commons. The plan is to modify the current procedure of media details in Upload, Search and in Explore in accordance with the <a href="https://www.wikidata.org/wiki/Wikidata:WikiProject_Commons/Properties_table">Structured Commons property table</a>. Prime features of Structured Commons include Captions and Depictions(multilingual and localised). The feature aims to use captions and Depictions while Uploading, Searching or for showing Media. As specified <a href="https://github.com/commons-app/apps-android-commons/issues/2415">here</a>.</p><h3>Goal of the Project</h3><p>Wikimedia Commons’ goal is to make media about a wide array of topics available to the whole world. Categories are used to help people find content, but unfortunately category search is only in English, making Commons less useful for 80% of the world. The solution to this is <a href="https://commons.wikimedia.org/wiki/Commons:Structured_data"><strong><em>Structured Commons</em></strong></a>, which allows people to seamlessly search for images about particular topics in any language, and see media information in that language too.<br>While the Commons website has slowly begun implementing Structured Commons, this GSoC has made the Commons app a reference of what Structured Commons is meant to be:</p><ul><li>Search for media using one’s native language</li><li>List media using native captions instead of technical filenames, only reverting to English if no caption is available in the user’s native language.</li></ul><p>Features developed in this GSoC have sparked ideas in other projects, with enhancement tickets being created to replicate these features on the Wikidata and Commons websites.</p><h3>Work Summary</h3><p><strong>Project Title: Add Structured Commons support to Commons Android app</strong></p><p>The work mainly centred around introducing core features of Structured Commons(Captions, Depictions) in Wikimedia Commons App</p><p><strong>Captions in Wikimedia Commons:</strong></p><blockquote><em>Captions are a feature part of Structured data. They are meant to store short, multilingual descriptions about files<br>This is a replacement of the previously used titles for images (titles were not multilingual)<br>Also now captions replace the previous convention of using title for filename</em></blockquote><ul><li>At the time of Upload, title of image has been replaced with multilingual captions (This is an improvement over title as title wasn’t multilingual and doesn’t provides enough description of the image)</li><li>Localised Captions are shown in media details for all the images that have captions</li><li>Captions(localised) are available for all media searches in explore, they are shown on the image thumbnail instead of previously used file name</li></ul><p><strong>Depictions in Wikimedia Commons</strong></p><blockquote><em>Depicts is a feature part of Structured data. Multiple Depictions can be added for an image just like categories.<br>However unlike categories depictions is multi-lingual</em></blockquote><ul><li>At the time of Upload now users are asked to enter “What does the image depicts?”. Several search results are shown(with thumbnail) on the basis of what the user has entered. They can select any depiction amongst the list of available depictions</li><li>Localised depictions are shown in media details of all the images of Wikimedia Commons</li><li>Search via depictions is also available in Explore where depictions in any language can be used to search for the media</li><li>Search for parent classes and child classes of depictions are also added to the search feature in Explore. While searching an image the user gets three types of result (each separated into different fragments) — Media, Parent Classes, Sub Classes(of the depiction)</li></ul><h3>Preview</h3><ul><li><strong><em>Title replaced by Multilingual Captions</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DazTXvJ5kYKA0oKrJ2VbDA.jpeg" /><figcaption><strong><em>Title replaced by Multilingual Captions</em></strong></figcaption></figure><ul><li><strong><em>Adding Depictions before Uploading image in any language (the preview here shows depictions searched in Hindi)</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/540/1*fZFcUN84xUeeEi-3xPQJUQ.jpeg" /><figcaption><strong><em>Adding Depictions before Uploading image in any language (the preview here shows depictions searched in Hindi)</em></strong></figcaption></figure><ul><li><strong><em>Items are available along with categories for each image in Explore</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-RK8g7JmKzHnk4SHbOzcgQ.jpeg" /><figcaption><strong><em>Items are available for each image in Explore</em></strong></figcaption></figure><ul><li><strong><em>List of Items available in Explore (this feature works on every language, and shows depictions in User’s locale)</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*RuELKpqeF82grL7QN-1SgA.png" /></figure><ul><li><strong><em>Clicking on any Item shows Media, Parent Classes and Sub-classes associated with the item (classes available in user’s locale)</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*bvuzV2G6Z1S_xlTDh5hbfg.jpeg" /><figcaption><strong><em>Clicking on any Item shows Media, Parent Classes and Sub-classes associated with the item</em></strong></figcaption></figure><ul><li><strong><em>Media details showing Captions and Depictions (in user’s locale)</em></strong></li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tW5uOmb81XUPbywG5Wa3-w.jpeg" /><figcaption><strong><em>Media details showing Captions and Depictions (in user’s locale)</em></strong></figcaption></figure><h3>Quick Links</h3><ul><li><strong>Github profile: </strong><a href="https://github.com/vanshikaarora"><em>Click here</em></a></li><li><strong>Blog posts: </strong><a href="https://medium.com/@vanshikaa937"><em>Click here</em></a></li><li><strong>Link of PR for GSoC: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/"><em>Click here</em></a></li></ul><h3>Final Summary</h3><p>This is the last but one Week of my GSoC’19 journey. It has been an amazing Experienced to work under such highly experienced Mentors. I have learned a lot over this summer, most important among them are — Testing, Code Quality, Unit tests, Kotlin, Retrofit, Common practices for writing code and Documentation</p><blockquote>Thank you, mentors — <a href="https://medium.com/u/1e843d6f6520">Nicolas Raoul</a>, <a href="https://medium.com/u/ea6a3a9684ec">Ashish Kumar</a> for your patience and help throughout this journey.</blockquote><blockquote><em>Thanks for reading this article. Here is a short Video I have created to help you guide for GSoC . Hope you’ll like the Video.</em></blockquote><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FmLzbB-gvfuA%3Fstart%3D1%26feature%3Doembed%26start%3D1&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DmLzbB-gvfuA&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FmLzbB-gvfuA%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/c879d90ae143982f97274720d00f51a0/href">https://medium.com/media/c879d90ae143982f97274720d00f51a0/href</a></iframe><blockquote><em>Let’s connect on </em><a href="https://www.linkedin.com/in/vanshikaarora"><em>LinkedIn</em></a><em>, </em><a href="https://twitter.com/vanshikaiitism"><em>Twitter</em></a><em> and </em><a href="https://github.com/vanshikaarora"><em>GitHub</em></a><em>.</em></blockquote><blockquote><em>Happy Coding!</em></blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d78e601ea39d" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Week 9 & 10 — Google Summer of Code]]></title>
            <link>https://medium.com/@vanshikaa937/week-9-10-google-summer-of-code-7742c1d975d2?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/7742c1d975d2</guid>
            <category><![CDATA[wikimedia-foundation]]></category>
            <category><![CDATA[wikimedia-commons]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[google-summer-of-code]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Wed, 14 Aug 2019 14:42:17 GMT</pubDate>
            <atom:updated>2020-06-29T15:55:30.208Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g5RBYeGe0VLB6t_ZsvO_wQ.png" /></figure><h3>Week 9 &amp; 10 — Wikimedia Project</h3><h3>Tasks worked on in brief</h3><ul><li>Showing localised captions in Media Details</li><li>Showing localised depictions in Media Details</li><li>Showing Items in Explore</li><li>Adding Search via Depicts(localised) in Explore</li><li>Replacing title with captions in Explore</li><li>Replacing title with captions in Home</li><li>Showing depicted images on clicking any item</li><li>Adding pagination in Items and Depicted Images</li><li>Tapping a depiction in media details should open search on that depiction</li><li>Adding Unit tests</li><li>Adding Documentations</li><li>Fixing the bugs raised by mentors and other community members</li></ul><h3>Preview for the changes</h3><ol><li>Localised captions in German</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*QX7Sn_0dmttVy3JhrqE4Yw.png" /><figcaption>Localised captions in German</figcaption></figure><p>2. Localised depictions in Hindi</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*f5OPGHP95eMeCn_aSBtd3g.png" /><figcaption>Localised depictions in Hindi</figcaption></figure><p>3. Localised Search via Depicts in Explore</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*_g42Cy7IVeaYZu3w932UgA.png" /><figcaption>Localised Search via Depicts in Explore</figcaption></figure><p>4. Replacing title with localised captions in Explore/Home (The image shows captions in German)</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*i4xwW9lRoqFOHeaEDpjlHw.png" /></figure><p>5. Showing depicted images on clicking any item</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*EJcn-DAbDPIbBfkCEWGkPA.png" /><figcaption>Showing depicted images on clicking any item</figcaption></figure><h3>Link to various commits of the work</h3><p>The given links refer to this <a href="https://github.com/commons-app/apps-android-commons/pull/2970">PR</a></p><p><strong>Commits for localised captions in Media Details: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/a2bf5c222e6c5e3db10b43d0969f844d3909e6a8">showing captions in </a>Replacing title with captions in Explore<a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/a2bf5c222e6c5e3db10b43d0969f844d3909e6a8">media details</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/308d703ea469337fa81202717ea41d01d11637f2">show captions in media details</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/7debc090bfd3fe002d3522a62988f96e2717e746">captions working perfectly</a></p><p><strong>Commits for localised depictions in Media Details: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/d03fc5e61200e775010b9986d68cd8cc28e00639">parsing response for depictions</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/2107a60abe3d8b0aaa3780c1ab169ae0cab5b6ea">displaying captions and depiction QID in media detail</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/2107a60abe3d8b0aaa3780c1ab169ae0cab5b6ea">displaying captions and depiction QID in media detail</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/2107a60abe3d8b0aaa3780c1ab169ae0cab5b6ea">displaying captions and depiction QID in media detail</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/19d8202f27acc04f81ca60e9605d91eae367257c">showing depictions in media details in production flavor</a></p><p><strong>Commits for showing Items in Explore and adding search via depicts: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/32c82e95f6e198e59baa5af6d064abaec5859626">Showing items in explore</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/423d7ae224ab0bf5114c1d6dfb6c4e258fd38b39">added search via depicts in explore</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/7fc77831b045ef7f6abff423d2c852086a177eaa">enabled pagination in depiction search</a></p><p><strong>Commits for Replacing title with captions in Explore/Home: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b9766199faeabd95564fc93f30ec1fc592ac3d98">show captions in explore</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/22be5b50135403cdf7d91e71c40cbb620c033f56">show captions in home</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/238a91a0462e71c7e860a5af9d8443a8fbbf01ed">showing captions in place of title in home and explore:media</a></p><p><strong>Commit for Showing depicted images on clicking any item: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/cf576c091f70ebdc6195bf800d8e7c4d85135a5a">showing depict images under items</a></p><p><strong>Commit for Tapping a depiction in media details should open search on that depiction: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/c22762b5cfc3dc7ec476e862b17661eeb77106c1">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3113">#3113</a></p><p><strong>Commits for Unit tests: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/85fbe592e53ac8ce8c2666af18fe1ce893a97192">added some tests and media deatils in depiction detail activity</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/83a5b77bf6d1f3fe4bbacc1a810bb563c5eb234a">added depiction search test</a></p><p><strong>Commits for Documentations: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b09f7ceeeebbad4be51ac65aa07c0f7bc1029bcb">added documentations and worked upon review comments</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b09f7ceeeebbad4be51ac65aa07c0f7bc1029bcb">added documentations and worked upon review comments</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/194777894bf8c4c34a0f7c3744cd2c239b58a09a">added documentations and code cleaning</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/0049e2bd63bf177a05e7cdac54af1fd23bc3c967">added documentation and code refactoring</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/096199d7a970505b4711280cad5a495629df14e1">added documentations</a></p><p><strong>Commits for fixing Bugs: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/f9a9854b18de289fb6e997f91b2381ba24b8ff2f">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3100">#3100</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/29e0fcad74055dba4dbc440941716e020eec1f40">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3098">#3098</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/62954080f25ef537cff9981bebe9ad6d11a2000b">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3099">#3099</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/369137a96d5ee0c3dacc6a9a417fd8465e818d4d">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3104">#3104</a> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/369137a96d5ee0c3dacc6a9a417fd8465e818d4d">and</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3098">#3098</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/46978b485b5b27d3d4131157510a5adaf5de8074">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3108">#3108</a> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/46978b485b5b27d3d4131157510a5adaf5de8074">and</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3107">#3107</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b64ebbc0551a633f4e0b70631d31c39c11f7718b">fix isse</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3108">#3108</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ee2b7befe47e4d70269327157d3c19c2f2814829">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3110">#3110</a> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ee2b7befe47e4d70269327157d3c19c2f2814829">and</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3112">#3112</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/c22762b5cfc3dc7ec476e862b17661eeb77106c1">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3113">#3113</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/39834fb61faeacc0fe0c3265cceb74de54030a44">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3076">#3076</a> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/39834fb61faeacc0fe0c3265cceb74de54030a44">and</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3109">#3109</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/1607bd9515f76cc8c81f79e3187b3f2f5c94ce62">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3113">#3113</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ac8e347a2e8e40c1a960e0b7bd7c8c344ce3502d">fixed bug with back button in media</a></p><p><strong>Other commits: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/2b1a8a8977263efc9bfd22cfad5b81330a7cc93b">minor changes</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/6becc3984e42e9f7d225aa5de9ed7a3407abdb0e">minor changes</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b15c1f7c7bc956576e3b9cda9ac664468ca5b2fd">resolved merge conflicts</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ab1ba3a64a2fdb723ceea26f5f9c455570fa676b">resolved merge conflicts wih backend-overhaul</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7742c1d975d2" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Week 7 & 8 — Google Summer of Code]]></title>
            <link>https://medium.com/@vanshikaa937/week-7-8-google-summer-of-code-8b8ea2e0d05?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/8b8ea2e0d05</guid>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[wikimedia-commons]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[wikimedia-foundation]]></category>
            <category><![CDATA[google-summer-of-code]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Wed, 14 Aug 2019 14:42:14 GMT</pubDate>
            <atom:updated>2019-08-14T14:42:14.626Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g5RBYeGe0VLB6t_ZsvO_wQ.png" /></figure><h3>Week 7 &amp; 8 — Google Summer of Code</h3><h3>Tasks worked on in brief:</h3><ul><li>Searching depictions from Depicts Activity</li><li>Extracting Wikidata Id of Depictions during Upload to send it to Wikidata</li><li>Fixing Bugs, Issues and Crashes</li><li>Working on Unit Tests</li><li>Working on Reviews by mentors on the PR</li><li>Added Documentations</li></ul><h3>Preview of Depictions in UploadDepictions Activity</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*_oKSS9coWJTXaySExysn-A.png" /></figure><h3><strong>Link to various commits of the work</strong></h3><p>The given links refer to this <a href="https://github.com/commons-app/apps-android-commons/pull/2970">PR</a></p><p><strong>Searching depictions from Depicts Activity:</strong> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/bacc9bc7bafdefdc68ff2fb90b54c0922d3d8ec9">searching depictions from depicts activity</a></p><p><strong>Extracting Wikidata Id of Depictions during Upload to send it to Wikidata:</strong> <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/7167094ce1f3da0faa303aa446d811fda86db61c">sending wikidataentity id to upload depictions</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ead14c660ad8dbd4ce0345d2ca6154cd04dba5f0">uploading depicts</a></p><p><strong>Fixing Bugs, Issues and Crashes: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/256c5876f91a33d9a5536c4a79e332c892e957d4">fixed crash due to depicts</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b210b1bd9a73edc60deb8194f5c049fa58b86a45">fixed crash on selecting depictions</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/c0457736b0a9814b89d724b5d07079df2cf56a05">Fixed issue with next button diabling in media detail activity</a></p><p><strong>Working on Unit Tests: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/d6dc1b82c6ef5c444f5fdbbff622b502f90d3d42">added tests for depictions</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ef686b2e928feb6a92f151be6376d968b1098aeb">added all the unit tests and fixed few more issues</a></p><p><strong>Working on Reviews by mentors on the PR: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/583cfd3869450585b0b9114dde3312555df78210">added changes after review</a></p><p><strong>Added Documentations: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/3a029a2b91b86544b31649660b27d4d91653d6e3">added some documentation and other changes</a></p><p>I have<strong>Other Commits: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/d3b4e42f04ed49dc5462125e348774ec3605bbf0">modified depicts interface</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/c0457736b0a9814b89d724b5d07079df2cf56a05">Fixed issue with next button diabling in media detail activity</a></p><h3>Challenges Faced</h3><p>During this phase my prime Challenge was learning. I have started learnt basics of Kotlin. Also I learnt how to Write Unit tests. During this time I have studied a lot about Unit Tests and Instrumentation tests. And successfully written tests in Kotlin</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8b8ea2e0d05" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Week 5 & 6 — Google Summer of Code]]></title>
            <link>https://medium.com/@vanshikaa937/week-5-6-google-summer-of-code-3b83d486cdf7?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/3b83d486cdf7</guid>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[google-summer-of-code]]></category>
            <category><![CDATA[github]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Fri, 19 Jul 2019 15:16:28 GMT</pubDate>
            <atom:updated>2019-07-19T15:16:28.071Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g5RBYeGe0VLB6t_ZsvO_wQ.png" /></figure><h3>Week 5 &amp; 6 — Google Summer of Code</h3><h3>Tasks in Brief</h3><ul><li>Storing and Retrieving captions from Local Database</li><li>Implementing Search for Depictions Using Wikimedia APIs</li><li>Using <em>Data-Client Library</em> to perform the network Calls like Uploading Captions and Depictions [WIP]</li><li>Fixed Issues raised by Mentors and other community members</li></ul><h3>Link to Various Commits of the Work</h3><p>The below links refer to <a href="https://github.com/commons-app/apps-android-commons/pull/2970/">this PR</a></p><p><strong>Commit for Storing and retrieving captions from local database: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/bb00bbaa3ebe734b952c524dd30b895e4e77f769">adding captions to local database</a></p><p><strong>Commit for Implementing Search for Depictions: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/388643971880a3a4d4ecc4a18335cb5bfae7ce38">added search for depicts</a></p><p><strong>Fixed Issues: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/f7c675856bd92e307ba1c88ec27b7e349dbc9d21">Fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3035">#3035</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/4a6bb78a9d0339fa4764a53a8f85e59db1b552a4">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3033">#3033</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/160fdb597fd1df5dab078770e8369d29e2977e84">fixed issue with project build</a>, <a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/e8db428b56406ab2df00f837c81308fe0df12fb1">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3044">#3044</a></p><h3>Challenges faced in this period:</h3><p>This period was primarily dedicated to the Bug fixes and transitioning from Wikimedia custom APIs to Data-Client library. Learning Retrofit and how to move from Custom APIs to Data-client library was the biggest milestone of this period.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3b83d486cdf7" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Week 3 & 4 -Google Summer of Code]]></title>
            <link>https://medium.com/@vanshikaa937/week-3-4-google-summer-of-code-824d5217463b?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/824d5217463b</guid>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[github]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[google-summer-of-code]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Fri, 19 Jul 2019 15:15:27 GMT</pubDate>
            <atom:updated>2019-07-22T08:10:48.740Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g5RBYeGe0VLB6t_ZsvO_wQ.png" /></figure><h3>Tasks worked upon in Week 3 and Week 4</h3><ul><li>Adding APIs to send Multilingual Captions to WikiBase</li><li>To fetch captions from the Modified UI and render them to the APIs</li><li>Replacing file name everywhere in the app with the first caption entered by the user</li><li>Fetching depictions from the UI and uploading them to WikiBase</li><li>Adding some unit tests and documentations</li><li>Resolved some issues raised by mentors and other community members</li></ul><h3>Link to various commits of the Work</h3><p>All commits are made in this PR:</p><p><strong>Commits for Uploading captions: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/00d50d7317547cbc5d584e46b4080d70c493a10b">send captions as labels</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/6a6dd20c7bdcbd691056f58ee179054ccc76ac90">fixed issue with the captions</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ee13ada9973e58d5a20e7fee20dc54621a00fd88">added upload for captions</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/b88fa1483c57f7fae42cd57442f32a87d7ebf179">uploading captions to wikibase</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/8a8c5115daaa4540d6cca9ea64b7cbdb17ef898b">uploaded captions as labels to wikibase</a></p><p><strong>Commits for Depictions: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/c7b7b171e9cf61308bdb369b3276043ed28ec83d">Merge branch ‘fix-2942’ of VitalyVPinchuk to use the Code for uploading Depictions</a></p><p><strong>Commits for unit tests and documentations: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/5d73d29f3ab7327352b9a768aaf104fada0f5b02">added documentation</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/ec2367fdb9e78b6d4901b932424532fe712a8db4">added some tests and documentation</a></p><p><strong>Commits for some issues: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/d900748aaccdb27f3376dcb72a43e1efd4d9261b">fixed issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3006">#3006</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/be6b726699d3f8e07b290b0e393ceb65d074f467">resolved issue</a> <a href="https://github.com/commons-app/apps-android-commons/issues/3004">#3004</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/76d2ed1b6cb7f280ea90002f07bc2718be128939">fixed issue with categoryPresenterTest.kt</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/6e3d271afba7d3fa441edbf38733768ec1acf4c7">resolved issue with uploading captions</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/39be6a4219d768beea0670a07521a0e999a82f4e">resolved issue with api call</a></p><p><strong>Few other commits: </strong><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/3c5e286a6f4b01336324818f4bdaf8b5abcfd9ca">resolved merge conflicts with refactor_uploads</a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/3fe29da588f7f51cff835c890368db7a0169b837">optimised imports</a><em>, #</em><a href="http://f25b8b752dd2f56de39023b0f653cec56d296755/"><em>commit</em></a><em>, #</em><a href="http://c7b7b171e9cf61308bdb369b3276043ed28ec83d/"><em>commit</em></a><em>, </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970/commits/35e757b67a48f3ceddbf3c62ec9e200aada2c407">undo formatting changes</a> and a few more</p><h3>What have I learnt in these two weeks</h3><p>I have learnt a lot about <a href="https://commons.wikimedia.org/wiki/Commons:Structured_data"><em>Structured Commons</em></a><em>. </em>Also I have learnt Wikimedia Commons APIs (how to call them and how to parse their results)</p><h3>Challenges Faced:</h3><p>Initially I faced difficulty in calling the Structured Commons API. But bit by bit I become familiar with their implementation and parsing. Next was to use the new <a href="https://github.com/wikimedia/wikimedia-android-data-client"><em>Data-Client</em></a><em> library. </em>This part was significantly challenging. However with the help and support of my Mentors <a href="https://medium.com/u/1e843d6f6520">Nicolas Raoul</a>, <a href="https://medium.com/u/ea6a3a9684ec">Ashish Kumar</a>, <a href="https://medium.com/u/5862a1b8ebd5">Vivek Maskara</a> we were able to overcome blockers and call the new Library.</p><p><em>Thanks to the mentors and community members :)</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=824d5217463b" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Week 1 & 2 — Google Summer of Code]]></title>
            <link>https://medium.com/@vanshikaa937/week-1-2-google-summer-of-code-cc77cb67f216?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/cc77cb67f216</guid>
            <category><![CDATA[wikimedia]]></category>
            <category><![CDATA[gsoc]]></category>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[wikimedia-commons]]></category>
            <category><![CDATA[wikimedia-foundation]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Mon, 10 Jun 2019 04:57:45 GMT</pubDate>
            <atom:updated>2020-07-07T12:15:09.017Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g5RBYeGe0VLB6t_ZsvO_wQ.png" /></figure><h3>Week 1 &amp; 2 — Google Summer of Code</h3><h3>Goals of Wikimedia Commons’ GSoC</h3><p><strong>The goal of my current GSoC is to add Structured Commons support to Commons Android app.</strong></p><ul><li>Submit captions to Structured Data</li><li>Show caption in media details</li><li>Show caption instead of filename in Contributions and Explore</li><li>Structured Commons “depicts” property</li></ul><h3>Tasks in brief of Week 1 and Week 2</h3><ul><li>Replace Title with multi-lingual Captions in First Step of Upload Activity.</li><li>Add another step in Uploads: “Select Depictions”</li></ul><h3>A demo UI for the tasks done:</h3><p>Below is the Modified UI of Step 1 of Upload Activity. Following changes can be observed:</p><ul><li>Captions instead of Title</li><li>Captions are multi-lingual unlike the Single field for Title</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*r5yGgltP7xxajZA6qr6f6Q.jpeg" /></figure><p>Added a “Step 2” to the Uploads Activity for adding <strong>Depictions. </strong>These suggestions have image, label and description with them.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/1*Pq2zgDRsRERtQbecOxgjxQ.jpeg" /></figure><h3>What I plan to do in next two weeks?</h3><ul><li>Implementing the Structured Commons API for sending mutli-lingual captions to Wiki-base</li><li>Fetching depictions from API using the captions/descriptions entered by the user, recent searches and by using TextWatcher</li></ul><p><em>Link to me Current PR is </em><a href="https://github.com/commons-app/apps-android-commons/pull/2970#pullrequestreview-247397762"><em>here</em></a></p><p><em>Thank you</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cc77cb67f216" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Community Bonding Period GSoC]]></title>
            <link>https://medium.com/@vanshikaa937/community-bonding-period-gsoc19-1a1ef4257331?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/1a1ef4257331</guid>
            <category><![CDATA[gsoc-2019]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[wikimedia]]></category>
            <category><![CDATA[wikimedia-commons]]></category>
            <category><![CDATA[wikimedia-foundation]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Wed, 22 May 2019 15:35:33 GMT</pubDate>
            <atom:updated>2020-07-07T12:14:30.198Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JEc9TKfgaFSH4jWx9f5UTQ.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/512/1*QG8Xb6RIlQ3mrqZ07LB3UQ.jpeg" /></figure><p>Contributing to Wikimedia is an amazing experience, it has many perks other than contributing to open source.</p><ul><li>Firstly, Going about the Wikimedia code-base itself gives great learning to Android developers.</li><li>Apart from that Wikimedia has got highly experienced and cooperative mentors. For even beginners to easily start with contribute to the project.</li></ul><p>Thus I am very proud to be selected at Wikimedia. 6 May 2019, was the beginning of my community bonding period. The tenure so far has been incredible I got to interact closely with the mentors. Both of my mentors (<a href="https://medium.com/u/1e843d6f6520">Nicolas Raoul</a> and <a href="https://medium.com/u/ea6a3a9684ec">Ashish Kumar</a> ) are extremely cooperative and interactive. We had two Video Meets and other offline communication as well.</p><p>In the <strong><em>first video meet</em></strong>, my mentors helped me to walk through the application, and understand the project from perception of other working communities of Wikimedia. I got to know about the Wikidata, how the information is shared to the Wikipedia database. And how this information is further used at Wikimedia and Commons.</p><p>In the <strong><em>second video meet</em></strong> we had discussions about <em>“my progress so far”</em> and <em>“How to start with the project?”</em> this is where I discussed upcoming tasks and other queries with the mentors.</p><p><em>Both the mentors are amazing and friendly to empower me in our general discussions.</em></p><p>Apart from the meets we regularly had offline discussions wherein I get various resources to go through or work upon. All these learning’s have made me much familiar with the working beyond the Commons mobile Application and to other Wikidata items.</p><p>The tasks that are assigned to me are always well structures and well explained.</p><p>My very <strong><em>first task</em></strong> has been to familiarise myself with the following three communities at Wikimedia:</p><blockquote>People who develop the Android Commons app<br>People who upload and edit pictures on Wikimedia Commons<br>People who create and edit items on Wikidata.</blockquote><p>I had been given various tasks to learn by actually contributing to each of the above three. That helped me learn in a quicker and an efficient way.</p><p><strong><em>Secondly</em></strong> I was assigned the task of <em>Getting familiar with the </em><a href="https://commons.wikimedia.org/wiki/Commons:Structured_data"><em>Structures Commons Properties table</em></a><em>. (the core part of the GSoC project). </em>The article provides all the necessary information about Structured Commons, need, what do we plan for future and how is the team working on the transformation.</p><p><strong><em>Third</em></strong>, task in hand was to be aware about the APIs that are to be used in the project. I had gone through various APIs available <a href="https://commons.wikimedia.org/w/api.php">here</a>. I have tried some of these APIs using curl also picked up the APIs that are to be used for the Structured Commons project.</p><p>Alongside, I made myself familiar with app’s architecture. The architecture of the app is well understandable. Thus prepared I myself for the upcoming tasks, of starting the actual coding stuff</p><blockquote>Overall, in the community bonding period I had amazing experience of interacting with my mentors and exploring the Wikimedia community. I am also prepared for the upcoming coding tasks in hand, thus looking forward for even more working and learning experiences at Wikimedia.</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1a1ef4257331" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Reading metadata from images]]></title>
            <link>https://medium.com/mindorks/reading-metadata-from-images-cbcdb0be6573?source=rss-89df44efa52------2</link>
            <guid isPermaLink="false">https://medium.com/p/cbcdb0be6573</guid>
            <category><![CDATA[iptc]]></category>
            <category><![CDATA[metadata]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[fbmd]]></category>
            <category><![CDATA[copyright]]></category>
            <dc:creator><![CDATA[Vanshika Arora]]></dc:creator>
            <pubDate>Sun, 03 Mar 2019 12:30:13 GMT</pubDate>
            <atom:updated>2019-03-03T12:30:13.268Z</atom:updated>
            <content:encoded><![CDATA[<h3>How to detect Facebook Metadata</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/500/1*y3bST2DnCmDTQzD5YnamTw.png" /></figure><h3>What is metadata?</h3><blockquote><strong>Image metadata</strong> is text information pertaining to an <strong>image</strong> file that is embedded into the file or contained in a separate file that is associated with it. <strong>Image metadata </strong>includes details relevant to the <strong>image</strong> itself as well as information about its production.</blockquote><p>Metadata also contains copyright information from the provider. These specialised instructions can be used to detect the source of the information like in this post we are going to detect whether a particular downloaded image was downloaded from Facebook.</p><p><em>(There is no documentation available for detecting Facebook special information. This is purely a research work. Based on study of data (metadata) available along with the images downloaded from Facebook)</em></p><h3>What are we going to do in this Tutorial?</h3><ul><li>Print all metadata of an image</li><li>Check if a particular image is downloaded from Facebook.</li></ul><h3>What is FBMD?</h3><p>On 2014–11–13, Facebook introduced a new tracking code(metadata in it’s files). It appears as an IPTC Special Instructions metadata field. They look like:</p><pre>Special Instructions: FBMD01000ac60300004a1d00002d4b000067580000c9650000d5fc000054350100953a0100d3420100e84b01005f8f0100<br>Special Instructions: FBMD23000969010000b1590000cb7700000a8600000c07010046820100b8c0010052590200e5c902006e440300</pre><p><strong>More about FBMD:</strong></p><p>In this special instruction each string starts with “FBMD”, two hex characters (1 bytes), and a 16-byte (4-character) length. Then comes length+1 sets of 32-bit (8-byte) values.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*W9KVKhvST-SRxqIdWqHmaw.png" /></figure><h3>How to extract metadata using Java</h3><p>The library <a href="https://github.com/dragon66/icafe">ICAFE</a><strong> </strong>is used to extract the metadata from the image.</p><ul><li>Download the library and import the classes in your code</li><li><strong>In Android Development:</strong></li></ul><p>1. Download the jar file from <a href="https://github.com/dragon66/icafe/blob/master/lib/icafe-1.1-SNAPSHOT.jar">here</a>.</p><p>2. Add it into the project module in the app-&gt;libs package</p><p>3. Right click then select <strong>Add as Library</strong></p><p>4. After successful gradle build we are ready to use the library</p><h3>Let’s Code</h3><p>We create a function which can extract metadata from any image</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/82cbdc363f533739d7448b34a55fac06/href">https://medium.com/media/82cbdc363f533739d7448b34a55fac06/href</a></iframe><p>Let’s understand the above code :)</p><ul><li><em>Metadata.readMetadata </em>reads the metadata from any image and returns a Map.</li><li>We extract IPTC metadata from the map using the key <em>MetadataType.IPTC</em></li><li>Using the iterator we iterator we iterate over the IPTC data which is of the type <em>MetadataEntry</em></li><li>The <em>printMetadata </em>function prints the value of the metadata recursively.</li></ul><p>Here is the code for <strong><em>printMetadata</em></strong></p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/1838665dddf59b4d8c6dcb2635a08957/href">https://medium.com/media/1838665dddf59b4d8c6dcb2635a08957/href</a></iframe><h3>How to check for Facebook Metadata</h3><ul><li>Create a java class <em>ReadFBMD.java</em> and pass path of the image into the constructor</li><li>Create a function <em>processMetadata </em>in the class <em>ReadFBMD.java</em></li></ul><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/d104b7851a0ab8049b57ed4849e3b917/href">https://medium.com/media/d104b7851a0ab8049b57ed4849e3b917/href</a></iframe><p>Let’s understand the above code :)</p><ul><li>First we read the metadata using the image path</li><li>Using <strong><em>getDataSets() </em></strong>on the IPTC metadata we obtain a map</li><li>This map has a key called <em>SpecialInstructions </em>which contains an array, performing <strong><em>getData() </em></strong>on the first element gives us the Facebook data which is a byte array.</li></ul><h3>Where is Facebook metadata?</h3><p>The byte array so obtained can be tested to contain FBMD data.</p><p><em>Note: Any image downloaded from Facebook contains the ASCII code of the letters ‘FBMD’ in this bytecode extracted from it’s IPTC metadata</em></p><p><strong>Checking for FBMD:</strong></p><pre>if (dataInBytes[0] == 70 &amp;&amp; dataInBytes[1] == 66 &amp;&amp; dataInBytes[2] == 77 &amp;&amp; dataInBytes[3] == 68) <br>{    <br>        System.out.println(&quot;Contains FBMD&quot;);  <br> }</pre><h3>Towards the end</h3><p><em>Try it yourself….</em></p><p>Download an image from Facebook or from any other source and go through the data of that image. You can find many other information about the image.</p><p><em>Give it a try!!</em></p><blockquote><em>Hope you have enjoyed reading the article. If you did please don’t forget to give claps on the article.</em></blockquote><p>Let’s connect on <a href="https://www.linkedin.com/in/vanshika-arora-6396b4143/"><strong><em>LinkedIn</em></strong></a> and <a href="https://twitter.com/Vanshik74929888"><strong><em>Twitter</em></strong></a>. For any queries feel free to drop a mail <a href="http://vanshikaa937@gmail.com/"><strong><em>here</em></strong></a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cbcdb0be6573" width="1" height="1" alt=""><hr><p><a href="https://medium.com/mindorks/reading-metadata-from-images-cbcdb0be6573">Reading metadata from images</a> was originally published in <a href="https://medium.com/mindorks">MindOrks</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>