Thursday, February 28, 2013

Mentor Meeting 2/27/13, Domain

Mr. Drix, my mentor, and I met again today. We talked about the project generally, since I have very few specifics ready to discuss.

The three main milestone programs for me will be versions of:

  • Chaosgame
  • Fractasketch
  • Complex Paint
We also decided to go with the name FractalCanvas, and I purchased fractalcanvas.com  -- I will be switching my SAFE test bed over after this weekend.

After several bugs and help support tickets to my web host, I traced the bugs down to some Perl version errors. SAFE was also just updated to run in lower-level directories so that I can run this site.

With all of that out of the way, full steam ahead!
Istvan.

Tuesday, February 26, 2013

Database Solved, Perl Problems, Domain Resolution

For the last few day I have been focusing on getting the web framework up and running on my server - this post is a quick summary of where I stand, what I have encountered, and what I expect to come.

SAFE, the framework I am using, is still very much in a development stage. I have successfully installed SAFE without any problem on my test server, but deploying it to my public server is requiring paving the way for new configurations. Thus far, the database initiation scripts (which assume full-privileged MySQL access and creates new users) has been incompatible with my shared hosting solution, which provides three pre-made accounts, none of which has full access. I was, however, able to rewrite the database configuration scripts to work, and submitted them to the SAFE repository for consideration.

The next challenge is to address a "syntax" error in the compiler (written in Perl) that exists only on the deployed site, not my local site. I am talking with the other developers now, hopefully the solution will be simple.

I have been in contact with the owner of www.fract.us about purchasing his domain. He is willing to sell it, but his offer is $199 - far out of my price range. I am also contemplating www.fractalcanvas.com. Suggestions would also be appreciated! This decision is fairly critical since naming conventions and style might depend on it. I need to have purchased a domain by the end of this week.

Istvan.

EDIT: misspelling of Perl

Sunday, February 24, 2013

WISE Blogs

I read several of my peer's blogs, and they are doing some really interesting projects! Two of my best friends who are also in WISE are composing music and learning performance magic.

Joon, who is amazingly musically talented, has already composed a piece for a video a friend and I made! His journal is part of his personal blog, which I follow. Joon makes frequent and content-filled updates frequently, almost daily. Given the nature of his blog/project, there are often great videos to watch or inspirational pieces linked in his posts making it far more engaging. His varied post style (combinations of lists, paragraphs, quick comments on a video, formal writing, semi formal, personal writing, etc.) also help making his posts engaging to read.

Edan is IHS's magician. He inspired me at the start of this year to pick up a deck and learn a few tricks of my own. I can't wait to follow his progress through the next 14 weeks, hopefully have him practice the tricks on me, and maybe even pick up some of the tricks he learns too. We have even talked about doing a two-person trick as part of his final project!

Progress on the theme is progressing - I have started throwing in dummy-apps to get a sense of how some of the major applications will look/behave on different screens. In the next few days I need to start porting the theme into SAFE and preparing the script libraries!

Istvan.

296 Lines

A night-and-a-day later, I'm 296 lines into the layout! (from body tag to body tag it's 34 lines, and 242 from style to style - no scripts needed!) A pure HTML5/CSS3 layout, this uses new (still developing) technology found in the latest browsers.


My next step is to start bringing this into my SAFE environment running locally. Unfortunately, on my shared host where the database server is separate from the web server, the preliminary SAFE config files need heavy tweaking (by default some tables require SUPER privileges in mySQL.) I am talking to the other developers about fixing that.

Istvan.

Saturday, February 23, 2013

Color Scheme

Quick Post:
I dug up the color scheme I used to design the current set of fractals and chaos applications!
Click here to check it out

Istvan.

Design Inspiration

The framework I am using is designed to be built into a layout. Having set up the basics for the framework, I am now looking to finalize my layout and start the fun part - coding it. The existing design needs work... I like the colors, but for a more advanced site there is a lot to be desired. There is no way to link to several applications, the site doesn't adapt well to screen sizes, the text is perhaps a little hard to read, and there is no navigation within a page.

I keep most of my sketches for website layouts around, buried in some pile or another, but there was one that I particularly liked and put on my bulletin board right above my computer (see picture). I think I have finally found a suitable project, so it is time to dig out my sketchbook and fold my existing layout into it! Stay posted for more sketches to come soon.


Istvan.

Wednesday, February 20, 2013

Grammar

As I am getting into the more advanced aspects of WebGL, a major challenge is becoming apparent. Sharers (programs that draw things) can not be recursive.... while fractals are, by definition, recursive. To overcome this, I am going to have to implement an iterative drawing mechanism in WebGL (while I could recursively generate the fractal in JavaScript, the result would not be nearly as fast. Besides shaders being optimal for this type of computation, recursive approaches are almost always slower since they require complex memory management.) I am digging through the following resources as I try to write an algorithm to generate a fractal recursively:

As a bonus, I am learning grammar rules (not the punctuation, spelling kind.) A very important and powerful concept in Computer Science, I am unfamiliar with the technical implementations and terminology of grammar rules... although that is quickly changing!

Back to research,
Istvan.

Friday, February 15, 2013

SAFE, WebGL

The first hurdle in building the website that will become the home of my project is building the underlying framework. I am working with the brand new, un-released, SAFE (Safe Activation Framework for Extensibility) framework. Using SAFE I can develop applications one at a time and publish them as part of the larger site.

In addition to publishing individual applications via the framework, I need to create and host libraries on which the applications are build. For example, many of the applications will run on WebGL (a language with which I am familiarizing myself as part of this project). I have spent the last several days reading through these tutorials to learn about WebGL and how to build it into my framework.

Progress is off to a great start,
Istvan.

Wednesday, February 6, 2013

Gantt

With only 16 weeks, time management will be crucial to the successful completion of my project. As a tool to manage the overall timeline of my project, I have posted the Gantt Chart I will be regularly updating and following. As a spreadsheet nerd, I implemented this chart in Google Drive using lots (and lots) of formulas (see below for some of my favorites).

As I add applications to implement and receive bug reports, I will maintain the gantt chart to reflect my deadlines. On days I post content-oriented blog posts, I will link to that post from the gantt chart. I have added the first steps for my project in the coming weeks pertaining to research, the framework, and porting over existing applications.

My favorite formulas:

To calculate the average completion of a major task (grey rows):
=SUMPRODUCT($D13:$D14,$E13:$E14)/SUM($D13:$D14)

To display the letters for the days of the month:
=if(NETWORKDAYS(DATE(YEAR(G4), MONTH(G4), 1), G4) <= LEN(text(G4,"MMMM")),right(left(text(G4,"MMMM"), NETWORKDAYS(DATE(YEAR(G4), MONTH(G4), 1), G4)),1),"")

To display the dates of weekdays:
=IF(NETWORKDAYS(L4+1,L4+1), L4+1, L4+3)

To color a cell in the calendar (grey is pending, yellow/blue is complete for major/minor tasks rkespectively, red is behind schedule and not complete):
=if(AND((K$4>=$B5),(K$4<=$C5)),if((ROUNDDOWN($E5*$D5)<=(K$4-$B5)), IF(TODAY() >= K$4, "Z", "X"), "Y"),"")

Stay tuned for a project name as I look to register a domain name in the coming days!
~Istvan.

Hello World!

Dear reader,
Welcome to my WISE project blog. For the next sixteen weeks, I will be developing web-based software to explore fractals and chaos. It is my goal to recreate the antiquated software used by the Ithaca High School fractals and chaos course in a modern environment accessible to students around the world.

My interest is in the mathematical, artistic, and programming aspects of this project. I am going to use a brand new web framework, SAFE, along with new, advanced technologies, including WebGL, that will allow for very fast computation and interactive environments to explore fractals and chaos.

Through the course of this project, I hope to learn not only computer-science-oriented project management skills (including bug tracking and time budgeting) as well as advanced technical skills as I mentioned previously.

I hope you enjoy my blog and my software!
~Istvan.