<?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 Stanley Zheng on Medium]]></title>
        <description><![CDATA[Stories by Stanley Zheng on Medium]]></description>
        <link>https://medium.com/@StanZheng?source=rss-914bbd6b0802------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*r6VqermfR8frj_0R8114MA.jpeg</url>
            <title>Stories by Stanley Zheng on Medium</title>
            <link>https://medium.com/@StanZheng?source=rss-914bbd6b0802------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 26 May 2026 10:09:13 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@StanZheng/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[Visual Studio Code: Up and Running]]></title>
            <link>https://medium.com/@StanZheng/visual-studio-code-up-and-running-28c5da02918e?source=rss-914bbd6b0802------2</link>
            <guid isPermaLink="false">https://medium.com/p/28c5da02918e</guid>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[visual-studio-code]]></category>
            <category><![CDATA[coding]]></category>
            <dc:creator><![CDATA[Stanley Zheng]]></dc:creator>
            <pubDate>Sun, 13 Mar 2016 01:03:49 GMT</pubDate>
            <atom:updated>2016-03-13T01:25:40.320Z</atom:updated>
            <content:encoded><![CDATA[<p>Tips to get you immediately productive in Microsoft Text Editor.</p><h4><strong>Try it! You might just like it!</strong></h4><p>Visual Studio Code is Microsoft’s cross platform text editor that was announced in April of 2015 and open sourced on Github in November. It has a similar look and feel to Sublime and Atom and is a quick responsive basic editor with polished tooling.</p><p>When I started web development, I started using Sublime Text 2/3 in 2012; but as time passed, it seemed sublime was stagnating with the product with fewer releases and interesting features. After Github announced Atom, I jumped on it as soon I got an invite. It was an exciting editor built on the tooling on the web that we all knew and loved. The community was very excited and the ecosystem on APM rapidly became 1:1 complete with all the plugins on Sublime.</p><h4>As Time Goes On</h4><p>Professionally, I ended up using more editors for development, from the Jetbrains family of IDE to the minimalistic VIM editor. These were far ends of the spectrum between what Atom traditionally offers and was very refreshing.</p><p>With Atom, I started running into limitations. Originally files larger than 4mb would crash your editor. To get where I liked it, lots of tweaking and plugins installation and increased startup time. Stepping through code was something you did on your own and you had set up your own tool chains for that.</p><h3>1. Add a jsconfig.json file</h3><p>Visual Studio is known for intellisense, Microsofts smart auto competition tool that lets your brain memorize less. It uses typescript definitions to give you type definitions for any library defined by using <a href="https://github.com/typings/typings">typings</a>, a tool to install typescript definitions. Most popular libraries already have a .ts definition file (React, lodash, express..) etc. Add the file to your project or in your .vscode directory if you do not want to commit it.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/3dd114c9b6af96423c29714a0a316522/href">https://medium.com/media/3dd114c9b6af96423c29714a0a316522/href</a></iframe><h3>2. Use Tasks in your Command Palate</h3><p>VSCode can read common task runner tools like Gulp and Grunt. VSCode adds these tasks to your command palate so you can easily use CTR+P and look for the task you already have default in your gulp file. If your project already has grunt or gulp added, no additional configuration is required. You can also define your own if you use NPM or another tool as your primary task runner.</p><h3>3. Use the Debugger Tools</h3><p>Microsoft have provided <a href="https://blogs.msdn.microsoft.com/vscode/2015/07/06/visual-studio-code-es6/">debugging tools </a>for JavaScript, TypeScript, Go and Python and the community are adding much more. They let you step through line by line and set manual break points. This gives the full stack editor feel while still keeping it minimum.</p><h3>4. Alias VSCode in Your Terminal</h3><p>At least with the OSX DMG installation, it does not link vscode in your user apps path like Atom. You can easily correct this with an alias.</p><p>function vscode { open -a “Visual Studio Code” $1}</p><p>and run it as vscode in your terminal.</p><h3>5. TODO</h3><p>This is a work in progress .. I’ll continue adding tips as I come along them while using it. Happy Coding.</p><h3>Conclusion</h3><p>Try out VSCode again, its gotten much better since the original release and getting better all the time. Its not reach critical adoption yet and there are small quirks (no tab navigation), it is definitely a worthy option to try.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=28c5da02918e" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Develop Java with Sublime Text Edtior]]></title>
            <link>https://medium.com/@StanZheng/run-java-in-sublime-e27d09aa72a0?source=rss-914bbd6b0802------2</link>
            <guid isPermaLink="false">https://medium.com/p/e27d09aa72a0</guid>
            <dc:creator><![CDATA[Stanley Zheng]]></dc:creator>
            <pubDate>Sun, 28 Dec 2014 07:39:48 GMT</pubDate>
            <atom:updated>2014-12-28T07:44:00.127Z</atom:updated>
            <content:encoded><![CDATA[<h3>Develop Java with Sublime Text Editor</h3><p>This is solved on for mac on sublime but should work on all environments if you have the proper paths set up.</p><p>It makes it a bit easier to build and run java every-time you compile. Saving seconds on each recompile can save mental contexts when you’re solving a problem. Speeds up from moving to terminal each time.</p><p><strong><em>using sublime or text editor is sometimes unmanagable for java but the anti-eclipse club is strong…</em></strong></p><p>If your projects get too out of hand, you should try <a href="https://www.jetbrains.com/idea/">IntelliJ</a>.</p><p>{ “cmd”: [“javac \”$file_name\” &amp;&amp; java \”$file_base_name\””], “shell”: true, “file_regex”: “^(…*?)☹[0–9]*):?([0–9]*)”, “selector”: “source.java” }</p><p><em>Originally published at </em><a href="http://blog.stanzheng.com/2014/01/29/run-java-in-sublime/"><em>blog.stanzheng.com</em></a><em> on January 29, 2014.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e27d09aa72a0" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Dominion Enterprises Hack University Hackathon]]></title>
            <link>https://medium.com/@StanZheng/dominion-enterprises-hack-university-hackathon-cacebac25944?source=rss-914bbd6b0802------2</link>
            <guid isPermaLink="false">https://medium.com/p/cacebac25944</guid>
            <dc:creator><![CDATA[Stanley Zheng]]></dc:creator>
            <pubDate>Sun, 28 Dec 2014 07:36:14 GMT</pubDate>
            <atom:updated>2014-12-28T07:36:55.978Z</atom:updated>
            <content:encoded><![CDATA[<h2>Dominion Enterprises Hackathon</h2><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*opdcuI0boNTqhfo_.jpg" /></figure><p>A hackathon, also known as a hack day, hackfest or codefest,is an event in which computer programmers and others involved in software development, including graphic designers, interface designers and project managers, collaborate intensively on software projects.</p><p>This was Dominion’s Seventh hackathon and second edition of HackU, a hackathon where schools were invited across Virginia. Paired with three coaches and given 24 hours, each team was read a challenge on gameification and set off to build something. None of the members of our team had more that a few hours of experience with titanium and almost none with Lanica.</p><h2>The inspiration</h2><p>The concept of the game came from staring off the 20th floor of Dominion Enterprises. We were using the windows as white boards, and one of our team mates suggested a game where you dodged obstacles and projectiles on a motorcycle. But then we thought it would be more fun to be the one chucking the obstacles.</p><p>We wanted to make a game where you are a person on a top of a building who is pelting moving vehicles below. It evolved when we wanted to make our miscrenent into a hero; We made the objective to egg to protect and the egger, a grouchy grandma.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*VsutIzlAYqTgLtX-.jpg" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*RmhyN8PJuzH1JF2w.jpg" /></figure><p>Neighborhood Watch was thus hatched.<br>A pack of reckless motorists have invaded your neighborhood. Protect your neighbors as they cross the street by egging the cars before anyone gets hurt.</p><p>Playstore: <a href="https://play.google.com/store/apps/details?id=com.DWS.neighborhoodwatch">https://play.google.com/store/apps/details?id=com.DWS.neighborhoodwatch</a><br>Github: <a href="https://github.com/stanzheng/HackU2">https://github.com/stanzheng/HackU2</a></p><h2>Day1:</h2><p>At the beginning of that hackathon we decided early on we would utilize lanica. After we brainstormed and prototyped our idea out, we started with a lanica boiler project and started from there. (<a href="https://github.com/Lanica/Platform/tree/master/platino/Engine/CodestrongCar">https://github.com/Lanica/Platform/tree/master/platino/Engine/CodestrongCar</a>)</p><p>After we did some tinkering we had a working demo in 30 minutes. Two cars that drove opposite of each other on the street with a sprite background we made.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*gM0AyKwnr-GeBhLx.png" /></figure><p>We then inserted more sprites that our graphic artists created. Boom!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*hfwHjznikx8YojB5.png" /></figure><p>We then inserted more sprites that our graphic artists created. Boom!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*1sm09yn94G_S1ubo.jpg" /></figure><p>After a bit of sloshing we got collisions working; in the context of the app we could crash two cars together and they would disappearing.</p><p>Using this mechanic, we started adding pedestrians into the mix.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/599/0*7TMcV8zd6EcibD_S.png" /></figure><p>At this end of the night we had core mechanics working, day two would be about polish and presentaiton. It was nice how fast it was to prototype all our ideas out and then bring it together in lanica.</p><ul><li>Sprite movement</li><li>vehicle and person collision</li><li>Project Collisions</li></ul><h2>Day2:</h2><p>End of the day, we polished our app. We added a couple of screen transitions and finalized the UI. We were really excited to show everyone our game and were nervous about everything working out correctly.</p><h2>|short video of all the mechanics working|</h2><p><a href="https://www.facebook.com/photo.php?v=10203082376161824&amp;set=vb.1278603133&amp;type=2&amp;theater">https://www.facebook.com/photo.php?v=10203082376161824&amp;set=vb.1278603133&amp;type=2&amp;theater</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/698/0*JI9m1FEIe0cG_cXg." /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/662/0*U1AhqjsJoApndKke." /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/640/0*D35CTjx81WXdVPZN." /></figure><p>End of this day</p><ul><li>Display UI</li><li>Screen transitions</li><li>deployed to the app store</li></ul><h2>Presentation</h2><p>The presentation hall was packed and 9 teams would be showing what they accomplished in 24 hours.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*UPxWQx2mR2_BnupF.jpg" /></figure><p>We performed our presentation with an ouyva, an android powered video game console. Due to the controller not working, we utilized a mouse to present.</p><p>Overall we took first place and best in show for use of Appcelerator/Lanica and the Dominion Enterprises APIs.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*V4O4qcw24s0gCicA." /></figure><p>If you’re still interested take a look at the source code and look below.</p><h2>Some other notes and some of the Cool Stuff From Platino</h2><p>Here are some of the notable ways we used parts of the game engine; The game engine did much of the heavy lifting and kept the game in the development zone. Writing in a familiar codebase of javascript, it was easier to produce. We did run into a few hic-cups and nuances in appcelerator and platino that the team had to work through.</p><h2>Sprite Collisions</h2><ul><li>The sprites along with being really easy to to import also inherited collision. This made it easy to do create listeners and events for when vehicles hit pedestrians or when the eggs hit the cars.</li></ul><h2>Camera Pan</h2><ul><li>The beginning animation was created using a sprite image and a pan. Super easy to create an pseudo animated home screen. In addition, both of the home and end screens were created by sprites that we hoped to create into animated span screens.</li><li>The vehicle sprites were created with vehicle view sprites that we then rotated. This way we only needed a single sprite that we then could animate.</li><li>Jossling was also a feature we utilized to make the sprites seem less linear. It multiplied the sprites with a coefficient to of random bounciness, which made our assets come</li></ul><h2>Platino</h2><ul><li>The animations of Grandma tossing the eggs were created using transform along with Platino constants. This made it easy for to say, go from point A toB but in a curved way or in a zig zag.</li><li>Generally platino being built off of appcelerator opened up a lot common tasks in the framework.In our app we were able to render full html pages for about and planned to create a UI for settings using titanium UI windows.</li></ul><h2>Created with love by The Grumpies</h2><p>Stanley Zheng @stanzheng <a href="http://github.com/stanzheng">http://github.com/stanzheng</a><br>Jose Mateo @jmate003 <a href="http://github.com/jmate003">http://github.com/jmate003</a><br>Onapha Rattana @cosmicmeow <a href="http://github.com/cosmicmeow">http://github.com/cosmicmeow</a><br>Trisha Tobias @aureately <a href="http://github.com/aureately">http://github.com/aureately</a><br>Anthony Bittle @guywithnose <a href="http://github.com/guywithnose">http://github.com/guywithnose</a><br>Chris Ryan @chrisryan <a href="http://github.com/chrisryan">http://github.com/chrisryan</a><br>Brandon Beigay<br>Krishna</p><p><em>Originally published at </em><a href="http://blog.stanzheng.com/2014/02/11/dominion-enterprises-hack-university-hackathon-2/"><em>blog.stanzheng.com</em></a><em> on February 11, 2014.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cacebac25944" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>