Giter Site home page Giter Site logo

swt18-project-06's People

Contributors

codezeilen avatar evdokiasnegriev avatar hkohlsaat avatar jansiebert avatar jeilef avatar leonbein avatar leonmatthes avatar pascalschulze avatar stlutz avatar till-later avatar tom95 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

swt18-project-06's Issues

Changing the provided Code may lead to unwanted behavior

If you replace the Code that is provided by the MorphicTutorial and then evaluate the code, some strange behavior happens:

  • if you remove a provided variables declaration it is still defined at runtime, which is kind of weird, because it is no longer visible by the user
  • If you add new variables to an already provided variable declaration, these variable declarations will result in some very weird behavior, in which the code compiles and runs fine, but when you open the method it was compiled into, the variable declaration is missing, causing you to be unable to save the method again, because it contains an undeclared variable
  • if you change the method declaration in an exercise like "Swapping colors", it will compile the new method name into the ColorfulMorph, which is most of the time not what you want, especially as there is no warning or confirmation, it just silently compiles it, possibly leading to problems when rerunning the exercise later.

Possible fixes:

  1. Provide a warning if such user change is detected (possibly difficult to find every change, error prone)
  2. Lock down the text to not allow change by the user (may require an extra text field)

QA Test

I just completed all lectures and it looks great :) . I was unable to find any errors, even when going out of my way to try and break things. I did have some minor issues though (some of them probably not even worthy of being addressed):

  • The tutorial world looks exactly the same as the "real" world. Not really a problem, but at first I thought my window had a hole in it ^^ .
  • The first time I switched between the current lesson and a previous one (to copy part of a previous solution), I unexpectedly lost all progress for the new, still incorrect one - even though I saved.
  • There are a lot of suggested solutions that do not follow any style guidelines (that I can identify).
  • I also noticed a few typos in the descriptions, especially the later ones.
  • From chapter 5 onwards, there were no cool links to bring me directly to a discussed class or method anymore.
  • [Chapter 2 - "Load an Image"] The solution does not show how the user was expected to solve the lesson.
  • [Chapter 6 - "Rotation Basics"] There is very little guidance here (in comparision to previous lessons). I had no clue what was really expected of me and basically had to cheat to solve it.
  • [Chapter 6 - "Rotate Morph by Angle"] Again, there was very little help here. I tried to add another TransformationMorph around the given Morph, not realizing that my owner already was one. Also: I was unable to see the resulting Morph.

Improve lecture descriptions

Possible improvements include:

  • Linking more methods and classes for easier navigation
  • Check for "advanced" terminlogy that a newcomer might not understand
  • Clearly state the goals of the lectures

Broken in Squeak 5.0/5.1

After removing the "Widgets" dependency, the tests fail in Squeak 5.1/5.0, but not in trunk.
Not sure if this is caused by the removal of the "Widgets" dependency or by something else, as the tests don't run at all when the "Widgets" dependency is added, as there seems to be an error with loading the package.

Star-Morph Lecture passes with non-star morphs

grafik

This is my solution to the Star-Morph lecture, as you can see, this really does not look like a star.
The checker also only checks for a PolygonMorph with 5 vertices, when in reality 5 tips are created by 10 vertices

Rework 4/3 (Star morph)

This lecture is very frustrating and not really solveable.
Either

  • Change star detection and give more hint how to create one
  • Change requirements (e.g. create a funny closed shape or similar)

It is possible to compile longer than intended method names

If you start to declare an n-ary method at the beginning of your code, the code will compile, but lead to unintended behavior.

  1. A new method is created which includes the lectureMethod name + name of the method at the beginning
  2. The lecture will not fail, if the lecture was previously solved

Improved Spy

Right now you can only detect if a method is called externally. The goal of this improvement is to notice internal method calls

  • Adding indirect calls over other objects
  • Adding indirect calls over classes
  • Adding calls in the form of: object method1 method2 where method1 returns the object

Opening the Morphic Tutorial can crash the image

When opening the Morphic Tutorial after checking it out from the repository (no prior Metacello installation, so probably some dependencies missing), the image halts. I have no further information at that point. :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.