summaryrefslogtreecommitdiff
path: root/content/projects.md
blob: 4a1f4806edbe2f9249a335f0b17f6e1505393171 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
---
title: "Projects"
date: 2022-07-13T21:26:49-05:00
---
# A collection of my projects, mostly programming

## [Daily RSS Server](https://git.marks.kitchen/?p=daily_rss_server.git;a=summary)

A server that just hosts an RSS feed. This feed is populated daily with items
that change based on the day, such as upcoming holidays, links to newspaper
comics, and fetching journal entries from historical ebooks.

*2022-02*

## [wikijscmd](https://git.marks.kitchen/mark/wikijscmd)

I use wiki.js for my personal wiki. I wanted a simple client I could use for it
and a command line one would also allow for me to script it. The wiki comes built
in with a GraphQL API, so I learned some GraphQL and created a python wrapper that
allows for managing and editing of wiki.js content over this API.

*2020-10*

## [Pi Weather Station](https://git.marks.kitchen/mark/pi-weather-station)

I set up a sensor on a raspberry pi zero to measure the temperature, pressure, and humidity.
This project is a web site that runs on the pi that plots the data over time. In the 
future I'd like to make the plots nicer, and include outdoor temperature data as well.

*2020-09*

## [Local Podcast Generator](https://git.marks.kitchen/mark/local-podcast-generator)

I had some audio files on my phone I wanted to listen to like a podcast. My podcast app is way
better for this type of content than a general purpose media player. So this app will locally
create a web server that serves an rss feed generated from a directory on your phone. This can 
be added like any other podcast in your favorite app.

*2020-09*

## File Feed

I found myself wanting to browse social feeds a lot, and wanting new content.
I have a lot of documents on my file of things I haven't explored yet. So this program
tries to merge the two: a generated feed of files on my computer.

*2020-08*

## [Games](https://games.marks.kitchen)

A collection of HTML5 games that I've made. When I have some fun idea, 
I'll host it here. It has high scores for some games too, and a scoreboard.
I am pretty proud of how this website turned out, it is what I wanted
to have when I was a kid.

*2020-04*

## Backdoor Learning on Models of Code

A class project where I studied how to poison training datasets of source
code to create backdoors in a model predicting a function name based on 
a code body. A backdoor is an inocuous feature that will force a prediction
to a target label. By modifying a small proportion of training data, with 
something like adding an unused variable declaration, the backdoor will be 
successfully learned. I implemented the Sever algorithm which attempts to
find and remove poisoned data, but it was unsuccessful at doing so on the 
code2seq model architecture. 

*2020-04*

## Multi-level Wavelet-CNN HDR Image Reconstruction from Single Exposures

A class project that used MWCNNs to reconstruct images. On HDR single exposure
images, white balancing often clips values. The novel wavelet approach was able
to reconstruct image detail in a realistic way.

## Budget

My website I made to host manage my budget. It functions a lot like a spreadsheet, 
with some more advanced features and an easier interface to use. It is multiuser, 
and if you are interested in using it send me an email.

*2019-12*

## Synthesis Refactoring

For class, I did a project using program synthesis to refactor programs. The program tried to
find areas inside source code that could be extracted into methods. It sort of works, and
in the future it could really be improved by using compilers techniques. I also made
web frontend for it.

*2019-10*

## Cosmic-Cargo

A game I worked on with some friends for GBJAM 2019, and is Oregon Trail, in
space. This game was made over the course of a week, and can be played at
[this_link](https://seafarerscafe.itch.io/cosmic-cargo)

*2019-08*

## Telegram Plugin Bot

A custom Telegram bot I wrote in python that allowed for custom plugins.
This made it super easy to add functionality to a bot, and it made
my group chat with friends lively. This project has now been suceeded by a
[rewrite](https://github.com/Mark-Powers/Telegram-Response-Bot-Java)
in Java. It was difficult to manage loading and unloading in Python, and
wrapping the API by hand made it difficult to expand beyond basic messages.

*2017-11, then 2019-10*

## Telegram Arcade

A general purpose bot and web server to play Telegram HTML5 games.
I couldn't find any existing solutions that allowed me to deploy
these games easily, so I wrote my own. The API is not well documented,
and I wrote a bit about it in a blog post.

*2019-05*

## marks.database

A personal database management system I wrote in order to keep track
of a lot of things. I use this as a bookmark manager, a recipe and pantry
organizer, and a way to store lots of other things too.

*2019-03*

## Read-Length

A firefox extension that adds the reading length of a website to the
title of a page. This was my first web extension, and its technique
for finding paragraph content doesn't work great. It works well in
firefox on Ubuntu, as the window bar will display the title with
the updated reading time.

*2019-02*

## marks.kitchen

The engine behind this website. I wanted to learn more about
back-end servers, and creating a way to me to update this
website dynamically. I wrote a blog post about the making.

*2019-01*

## Compiler

A compiler I worked on as an indepedent study during undergrad,
implementing techniques from "Compilers: Principles, Techniques, and Tools".
I also wrote a small stack based [virtual machine](https://github.com/Mark-Powers/stackvm)
that runs the generated code

*2018-10*

## Streetcard

A general purpose card game engine. I wanted to test out some strategies for
card games, so I tried to write an engine for it. I didn't finish it, but
you can play some basic card games in this engine.

*2017-10*

## Roguelike

A rogue-like demo game I made just for fun while I was on winter break one year.

*2017-01*