<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Projects on Salman's Blog</title><link>https://salmanfs.ca/tags/projects/</link><description>Recent content in Projects on Salman's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 02 Jan 2020 07:47:28 +0000</lastBuildDate><atom:link href="https://salmanfs.ca/tags/projects/index.xml" rel="self" type="application/rss+xml"/><item><title>RPM Packaging for JMC</title><link>https://salmanfs.ca/posts/rpm-packaging-for-jmc/</link><pubDate>Thu, 02 Jan 2020 07:47:28 +0000</pubDate><guid>https://salmanfs.ca/posts/rpm-packaging-for-jmc/</guid><description>&lt;p&gt;When JDK Mission Control (JMC) was open-sourced, one of the main tasks for our team at Red Hat was to make it widely available to our developer community.
This meant packaging the application for Fedora.&lt;/p&gt;
&lt;p&gt;Fedora is a distribution of Linux sponsored by Red Hat.
It is the bleeding edge of free software and the upstream source of Red Hat&amp;rsquo;s flagship Enterprise Linux distribution, RHEL.&lt;/p&gt;
&lt;p&gt;I was tasked with packaging an RPM for JMC.
This allowed me to take a deep dive into Maven, Eclipse RCP and RPM build tools.&lt;/p&gt;</description></item><item><title>Nomad Rover</title><link>https://salmanfs.ca/posts/nomad-rover/</link><pubDate>Thu, 02 Jan 2020 07:43:53 +0000</pubDate><guid>https://salmanfs.ca/posts/nomad-rover/</guid><description>&lt;p&gt;This was a hackathon project for Mission Hacks 2018.
The theme was to create something that can be used by a hypothetical group of colonizers to
establish a settlement on &amp;ldquo;New Earth&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.facebook.com/CanadaRandstad/photos/basw.Abp4IYTQgbTVj4z-ZS730yyL22qmTNd6Ss709NIUUDmibtzaRZ1uk4-rDTvvvpJEpZLYBvIXnf08nw0r_61EbAjiNyFAf_2luc0jfdH3mlYwbJ_oKFLi5HgrDaBNAj6q_TCLfOoFyGOQ4tVItGWGRvJL.1866101276734794/1866101276734794/?type=1&amp;amp;theater"&gt;Our team&lt;/a&gt; decided to tackle the issue of exploring the new landscape.
We envisioned a fleet of autonomous drones and rovers that would traverse the new planet and identify known elements
while also taking various measurements and creating a map.
The team name &amp;ldquo;Nomad&amp;rdquo; came from the idea that we were going to wander about the &lt;em&gt;New Earth&lt;/em&gt; like nomads.&lt;/p&gt;</description></item><item><title>JDK Mission Control</title><link>https://salmanfs.ca/posts/jdk-mission-control/</link><pubDate>Thu, 02 Jan 2020 07:42:10 +0000</pubDate><guid>https://salmanfs.ca/posts/jdk-mission-control/</guid><description>&lt;p&gt;This was the project my team was working on during my coop at Red Hat in Toronto.
Formerly Java Mission Control, the tool was a proprietary offering in Oracle&amp;rsquo;s Java subscription.
It was open-sourced by Oracle in early 2018 (just before the start of my internship) as JDK Mission Control (JMC).
It is now a project under the OpenJDK umbrella.&lt;/p&gt;
&lt;p&gt;There was previously a similar open-source tool developed by the OpenJDK team at Red Hat called Thermostat.
Red Hat decided to focus their efforts on improving JMC rather than working on Thermostat since JMC was already the de facto industry standard.&lt;/p&gt;</description></item><item><title>Adaptive Corrosion Protection System</title><link>https://salmanfs.ca/posts/adaptive-corrosion-protection-system/</link><pubDate>Thu, 02 Jan 2020 06:50:17 +0000</pubDate><guid>https://salmanfs.ca/posts/adaptive-corrosion-protection-system/</guid><description>&lt;p&gt;I worked on this project as a Research Assistant at the
&lt;a href="https://ciber.fas.sfu.ca/"&gt;Centre for Integrative Bio-Engineering Research (CIBER)&lt;/a&gt;,
a lab in SFU&amp;rsquo;s Faculty of Applied Sciences headed by Prof. Bozena Kaminska.
The goal of the project was to develop a corrosion protection system using cathodic protection.
It would measure soil conditions, calculate protection current and corrosion rate and supply protection voltage.&lt;/p&gt;
&lt;p&gt;We forked an open-source project, &lt;a href="http://microfluidics.utoronto.ca/gitlab/dstat/dstat-interface"&gt;DStat&lt;/a&gt;,
that some researchers at University of Toronto had been developing.
I worked on the GUI that would interface with the hardware module over serial USB.&lt;/p&gt;</description></item><item><title>Shogi</title><link>https://salmanfs.ca/posts/shogi/</link><pubDate>Sun, 01 Jan 2017 03:20:50 +0000</pubDate><guid>https://salmanfs.ca/posts/shogi/</guid><description>&lt;p&gt;I was the team leader for a term project in a software engineering course. Our team of 5 developers designed, developed and tested a program to play Shogi, a Japanese variant of chess. We used Julia for programming , GTK+ library for the graphical user interface, SQLite3 for the database and Fossil for version control. Users had the option to play the game in multiplayer mode with another user on the same computer, over email or over the local area network. Players could play the game using the CLI (colorful ASCII art) or the GUI. The program included 4 game modes (minishogi, standard shogi, chu shogi and tenjiku shogi) and 5 difficulty levels (normal, hard, suicidal, protracted death and random). The different game modes meant different pieces and a unique set of permissible movements for each. The difficulty levels were for how challenging the AI would play against the user. We also setup a one-click installation procedure (Linux and Windows compatible) for the game to ease installation headaches for users (download dependencies, create a launcher icon, etc.).&lt;/p&gt;</description></item></channel></rss>