Thursday, April 2, 2015

Final Blog Post

1. On a scale of 0 to 100 (from zero effort to the most effort you possibly could have given) what would you rate your effort level on your 20% Time Project?
95. I did a TON of work outside of class, and I learned a bunch about programming and the process of creating an application which was what the purpose of the project.
2. In what areas (research, planning, blogging, executing, presenting) have you given more effort or less effort? Why?
Blogging. I really dislike doing the blog posts, and while I talked a lot about what I learned, and what I was doing, I didn't do a lot of reflecting which sort of defeated the purpose.
3. What are you really proud of from your 20% Time Project?
Definitely that I was able to create the design for something that actually works. It took me so much time to adjust all of my settings and code to get it to look good enough to present
4. What motivated you to give the effort level that you did give?
Self motivation. I have always wanted to do this project, and having the 20% time opportunity allowed me to start it, and gave me time to work on it.
5. If you could go back and do the project over, are there things you would try to improve? Are there things you wish you'd done, that you didn't do? Ways you could have pushed yourself to raise the bar even higher?
I wish I had better budgeted my time. I had my schedule set to release the final on April 1st, which obviously is simply not feasible. I should have realized the amount of time it takes to code something. I also wish I had taken the time to create a workflow and psuedocode for the application so that I could make sure that everything would work. However, I was really focused on having a product, so I skipped some important steps.
6. What was the most challenging part of this project for you?
The immense amount of work that is required to take an idea and turn it into an actual marketable product. I didn't realize the amount of background processes that go into an application. I wrote around 1500 lines of code just to make the page that is live for one news article. I will have to write thousands more to make it a universal application.
7. What have you learned about the project-planning process?
As I mentioned before, I didn't realize how much time it takes to do certain tasks. I overestimated a lot of things, and didn't give myself enough time in my schedule, and it made me feel like I was behind.
8. What in this project has made the biggest impact on your learning? Why?
I really learned a lot about how to do a presentation for a Venture Capitalist. I did a lot of research, and found the structure and format of how best to sell an idea.
9. When you consider the rest of your life, what percentage of what you learned during this project do you think will be useful to you? Explain.
75% I learned a lot about how to take an idea to production. If I go into computer science this will be incredibly important, and a great skill to have.
10. If you could turn back time and do this project again, what would you do differently?I think this is a repeat of question 5
11. What advice would you give students who will participate in this project next year? 
Budget your time appropriately, it's better to have too much time than too little
12. What is something I could do in the future to make this project better?
I didn't enjoy the reflection portion of the blog, I think that it should be about the process and how the project came together
13. What grade would you give yourself for the quarter? On what main factors do you base that grade?
95 I haven't fallen into the trap of senioritis and I am proud of that. I am taking 2 classes for honors, and 2 UVM classes, even though it doesn't matter how advanced my classes are for college.

Thursday, March 12, 2015

Reflection 3/12

I spent the last week in St. John, USVI sitting on the beach, and hiking. However relaxing this may sound, I also spent a fair amount of time working on Komett. Although previously I had thought that I would program Komett in Ruby on Rails, I have decided to write Komett in PHP, Javascript and HTML. Although Ruby on Rails is a very comprehensive program, I believe that PHP, Javascript, and HTML (the backbones of the web) will give me more control over the application, and allow for scalability if Komett takes off.

Komett is still under development, but the prototype page describing the basic function to potential investors and customers is almost live.

I struggled greatly between building the entire project at once, including commenting, sorting, submission of articles, creation of accounts, and account management; and building a single page showing why the application is beneficial, and then incorporating the building blocks then.

I have decided that a bottom-up approach will be best for this application. It will allow me to always having a working website, but build new modules and add them as needed and when I have time and funding to build them. The end goal is described in the project summary, but by starting with in text comments, then adding sorting of comments, then adding user accounts, and finally adding user submissions will allow expandability and new features for customers who sign up with the initial release.

I look forward to sharing my project with the community next week, and will be presenting it as a customer pitch. I will ask the community what features they think will add most to the application, and if they think certain features are necessary.

Tuesday, February 17, 2015

Reflection Feb 17

Know that I have a Facebook page for my website, I am trying to figure out the best way to post interesting articles. I think I am going to try to write a script that takes the top article on the BBC and the top comment and post them together. However, I doubt I will get to doing that. For now, I will be posting articles by hand.

In terms of the application, I have decided to write the application in Ruby on Rails. The benefit to using this scripting language is that I will not have to write a lot of low level code. Ruby on Rails is designed for web applications like the one I am creating. Thus, instead of having to writing a lot of HTML, CSS, Javascript, and PHP (each languages that are relatively complex) I will just use Ruby on Rails, and everything will be self contained.

I have realized how hard this will be. Although I am not new to coding at all, there are a lot of differences between Ruby on Rails and the other languages that I writing this program will not be easy. I have downloaded a bunch of books about rails, and I plan to read these over break.

One problem I have been thinking about is how to import articles into the application without breaking copyright law. I might have to keep a live view of the website in order to keep the article intact. However, when I go to launch, I plan to talk to a lawyer to ensure I am not breaking any laws...

Wednesday, December 17, 2014

Reflection Dec21

I've begun to create the launch page, which is going to be a two section webpage. It will be divided where the first half is information, and the bottom half will be a sign up form to receive a notification when we launch, and access to the beta when it comes out. Before beginning on this page, I wanted to make sure that I got it completely correct. I did some research and I found two key points that I will use to drive sign ups.

The first is that it is always necessary to A/B test. This is a key component of website, UX design. Basically, what it comes down to is presenting half of your viewers with one website, call it A, and the other half with the second website, call it B. The difference between A and B being one small change, be it a different colored button or a different tagline. Then, you look at the difference in sign ups between the two user populations, and you then determine which feature users like better, A or B.

The second is to have the entire page direct users, consciously or unconsciously, to the sign-up button. There is no reason to have a sign-up page if users don't sign up, so by leading users to the sign-up button, they will be more likely to sign up, and less likely to leave without giving you their email address.  Some techniques of this are having more than one sign-up form, or having buttons which forward the user to the sign-up form, and spreading these throughout the information. For example, you might have a piece of text that explains the project, and at the end you say, "to find out more, click here" and the word "here" is a link to the sign up form.

There were a few other tips, but I liked these two the best, and I plan to incorporate both of them into my website to try to gather as many users before the release as possible.

Sunday, December 14, 2014

Reflection Dec14

Although I am excited to develop this application, I am worried about the number of users I will need to develop a critical mass. In most applications such as Yik Yak, and Reddit, the critical number of users is quite small. Only a handful of people need to have the application to have an interesting conversation because everyone can see every other user's posts. However, because the conversations in Komett are sorted by the poster's opinions and political background, it will mean that for Komett to be useful for a democrat, there must be a number of democrats already who have the site who have interesting conversations. Likewise, for a East European communist, there must already be a handful of Eastern European communists who will be able to interest the potential user enough to join.

I think a way to get users to join will be by having advertisements on web pages that are targeted to 18-33 year olds(millenials) because they are the most likely group to join a social network (because they have the technology, and the desire to join). These advertisements will incite them to voice their own opinions through catch slogans such as, "What's your opinion," over a picture of a modern news article. For example, one such advertisement is a picture of ISIS fighters, with the caption in white letters above it. Then, by clicking on the advertisement, it would take the user to the article about ISIS, and allows them to sign up to comment.

Wednesday, December 10, 2014

Reflection Dec7

This week, I decided to design a logo. I had always assumed creating a logo was easy, so I thought I would just sit down and come up with something. However, I realized it was much more intense than I thought. I began by finding a color scheme. I read a few articles, and decided that I wanted a blue color. However, Facebook, Tumblr, and a number of other social networks already have very iconic blue colors. I looked for one that was dark enough to look good, without being too close to black. I found one: R(21) G(30) B(45) which I liked. I then looked for a design, which I thought would reflect my brand identity.  What I came up with is this:

At this point, I was an hour or two through my process, and I was glad that I had found something useable. I showed it to some people, asking them for criticisms, and the told me a few things. “It looks too much like tumblr” and, “It looks too much like a pi sign”
I moved onto my second design. I changed the background color to: r(39) G(46) B(57).  In order to avoid looking like tumblr, I took the K from Komett, and set it in the middle. This is the result:

However, the people I like did not like this one because they thought it was too plain. At this point I was so frustrated with trying to come up with a combination of text and color that I gave up on the font. I thought about what else I could use that would be a combination of my name Komett, the purpose of the network. I decided to try to build Comet freehand, and put it on a brighter blue background. Initially had the comet perfectly level, but as someone pointed out, if the comment were pointed slightly upward, it would seem more natural, and would give the impression of an moving upwards, i.e. something along an increase in knowledge. This is my final design. However, not only have a gained a logo, I have also gained an appreciation for graphic designers.

Wednesday, November 19, 2014

Reflection November 9th

I am very glad to start this project, it is something that I had this idea awhile ago, but didn’t think I would get around to actually completing it because of school. However, now that I have an incentive, I look forward to starting and completing this application. This is something I can continue in the future after the project ends, and could possibly a long-term web application that it is used globally. I am a little worried about moving into the web application as opposed to iPhone development, as it is not what I am as good at. I do welcome the time to research and learn this side of programming though.
Another challenge that I think I will have is launching a successful marketing campaign. Although there are millions of iPhone users, and billions of web users, connecting with them will be hard. I think it will take some upfront capital in terms of advertisements and email campaigns. I will provide this upfront, but I expect it to pay off in the long run.  Another difficulties will be monetizing it in the future. An obvious answer is providing ads in the application and website, but I really dislike the stylistic effect that ads have on a website, but in order to pay for server space and the overhead costs, I will need to come up with something.
            That being said, I look forward to this project, and I think that it is something which could revolutionize communication, allow me to explore new areas of programming, and be a long term project that I could show off on resumes and job interviews.