Showing posts with label Logo. Show all posts
Showing posts with label Logo. Show all posts

Friday, 8 September 2023

Logo Programming Language: A Creative Journey into Coding.

In the world of programming languages, there are many that have made their mark, but few are as iconic and memorable as Logo. Logo is not just a programming language; it's a tool that has introduced countless children and beginners to the world of coding and computational thinking. In this blog post, we'll explore the fascinating history of Logo, its unique features, and why it continues to be a valuable tool for learning and creativity.

A Brief History of Logo

Logo, originally created in the 1960s, was the brainchild of Seymour Papert, a mathematician and educator, and his colleagues at the Massachusetts Institute of Technology (MIT). It was designed with a specific goal in mind: to provide a simple and accessible way for children to learn programming concepts. The language was named "Logo" after the Greek word "logos," meaning word or thought.

Logo's most distinctive feature is its use of a "turtle" graphics metaphor. A "turtle" is a cursor that can be controlled using Logo commands to draw shapes and patterns on the screen or on paper. This visual aspect of Logo makes it highly engaging for learners, as they can immediately see the results of their code.

Key Features of Logo

Turtle Graphics: The turtle, controlled by Logo commands, moves across the screen, leaving a trail as it goes. This immediate visual feedback makes it easy for beginners to understand the cause-and-effect relationship in programming.

Procedural Programming: Logo encourages a procedural programming approach, where learners break down tasks into smaller steps (procedures) and then combine these procedures to create more complex programs.

Interactivity: Logo is known for its interactive nature. Learners can experiment, modify their code on the fly, and observe the changes in real-time. This iterative process fosters creativity and problem-solving skills.

Readability: Logo uses a simple syntax with English-like commands, making it accessible to people of all ages, especially children. This readability helps learners focus on programming concepts rather than struggling with complex syntax.

Learning Through Play: Logo's playful and exploratory nature aligns with the idea of "learning through play." It encourages users to experiment, make mistakes, and learn from them—a crucial aspect of effective learning.

Applications of Logo

Logo was initially created for educational purposes, and it has excelled in that role. It has been used in schools and educational institutions around the world to teach programming, math, and problem-solving. However, Logo has also found its way into other domains:

  • Art and Design: Logo can be used to create intricate geometric designs and artwork. Artists and graphic designers have used Logo to generate stunning visuals.
  • Robotics: The concept of a programmable "turtle" has been extended to robotics, where physical robots can be programmed using Logo-like commands. This bridges the gap between digital and physical coding.
  • Mathematics Education: Logo is an excellent tool for teaching and exploring mathematical concepts such as geometry, algebra, and trigonometry in an interactive and visual manner.
  • Computer Science Concepts: Logo can be used to introduce fundamental computer science concepts such as loops, conditionals, and variables, making it a versatile tool for teaching programming.

Conclusion

Logo is more than just a programming language; it's a gateway to the world of coding, creativity, and problem-solving. Its enduring popularity and effectiveness in education underscore its value as a tool for learners of all ages. Whether you're a child taking your first steps in programming or an adult looking for a playful way to explore computational thinking, Logo remains a welcoming and powerful resource.

In the ever-evolving landscape of programming languages, Logo stands as a testament to the enduring power of simplicity, interactivity, and the joy of learning through exploration and play. So, whether you're drawing colorful shapes on the screen or controlling a virtual turtle, Logo continues to inspire and educate, leaving its indelible mark on generations of learners. 

In my exploration of the Logo programming language, I came across a fantastic resource that I'd like to share with you. "HB Blog 58: Logo Programming Basic" offers a comprehensive introduction to Logo programming. This insightful blog post dives deep into the basics of Logo, providing valuable insights and examples. Whether you're a beginner looking to learn the fundamentals or someone seeking a refresher on Logo, I highly recommend checking out this blog post. It's an excellent starting point on your Logo programming journey.

Tuesday, 11 August 2015

HB Blog 89: UI/UX Images With Appropriate Sizes And Resolutuons In Android And iOS.

Mobile technology is growing at a very pace, and mobile technology and applications attract user with its UI/UX. The user interface(UI) is one of the most important parts of any program because it determines how easily you can make the program do what you want. A powerful program with a poorly designed user interface has little value. User experience design (UXD or UED) is the process of enhancing user satisfaction by improving the usability, accessibility, and pleasure provided in the interaction between the user and the product. User experience design encompasses traditional human–computer interaction (HCI) design, and extends it by addressing all aspects of a product or service as perceived by users. UI and UX in mobile applications are depended on images that the application is developed with. It includes appropriate sizes, colors, resolutions, density, etc.
There is a standard used for specific images for place where image is to be used with appropriate sizes and resolutions. In Android, below table explains the sizes and resolutions for the different types of icons used by applications.


MDPI (Baseline) HDPI XHDPI XXHDPI XXXHDPI
Scale 1 x 1.5 x 2 x 3 x 4 x
DPI ~ 160 dpi ~ 240 dpi ~ 320 dpi ~ 480 dpi ~ 640 dpi
App Launcher Icons 48 px 72 px 96 px 144 px 192 px
Action bar Icons 32 px (24px inset) 48 px 64 px 96 px 128 px
Small / Contextual Icons 16 px (12px inset) 24 px 32 px 48 px 64 px
Notification Icons 24 px (22px inset) 36 px 48 px 72 px 96 px

In iOS, below table explains the sizes and resolutions for the different types of icons used by applications.


Asset
iPhone 6 Plus (@3x)
iPhone 6 and iPhone 5 (@2x)
iPhone 4s (@2x)
iPad and iPad mini (@2x)
iPad 2 and iPad mini (@1x)
App icon (required for all apps)
180 x 180
120 x 120
120 x 120
152 x 152
76 x 76
App icon for the App Store (required for all apps)
1024 x 1024
1024 x 1024
1024 x 1024
1024 x 1024
1024 x 1024
Launch file or image (required for all apps)
Use a launch file (see Launch Images)
For iPhone 6, use a launch file (see Launch Images)
For iPhone 5, 640 x 1136
640 x 960
1536 x 2048 (portrait)
2048 x 1536 (landscape)
768 x 1024 (portrait)
1024 x 768 (landscape)
Spotlight search results icon (recommended)
120 x 120
80 x 80
80 x 80
80 x 80
40 x 40
Settings icon (recommended)
87 x 87
58 x 58
58 x 58
58 x 58
29 x 29
Toolbar and navigation bar icon (optional)
About 66 x 66
About 44 x 44
About 44 x 44
About 44 x 44
About 22 x 22
Tab bar icon (optional)
About 75 x 75 (maximum: 144 x 96)
About 50 x 50 (maximum: 96 x 64)
About 50 x 50 (maximum: 96 x 64)
About 50 x 50 (maximum: 96 x 64)
About 25 x 25 (maximum: 48 x 32)
Default Newsstand cover icon for the App Store (required for Newsstand apps)
At least 1024 pixels on the longest edge
At least 1024 pixels on the longest edge
At least 1024 pixels on the longest edge
At least 1024 pixels on the longest edge
At least 512 pixels on the longest edge
Web clip icon (recommended for web apps and websites)
180 x 180
120 x 120
120 x 120
152 x 152
76 x 76

Saturday, 14 February 2015

HB Blog 58: Logo Programming Basic.

Logo is an educational programming language, designed in 1967 by Daniel G. Bobrow, Wally Feurzeig, Seymour Papert and Cynthia Solomon. Logo is a multi-paradigm adaptation and dialect of Lisp, a functional programming language. It is the most interesting programming language for children to learn. It was my first programming language and personally speaking I liked the turtle. Basically, the environment goes like a terminal with screen and terminal at bottom. The screen has turtle(robot logo) which is like our starting point or say mouse pointer. As we provide commands in terminal appropriate actions are performed by this turtle.

Following are few basic commands,
fd - It moves turtle forward command with specific units
bk - It moves turtle backward command with specific units
rt - It moves turtle right command with specific units
lt - It moves turtle left command with specific units
cs - It clears the screen.
repeat - It repeats the commands.
pu - It pen up the turtle which makes turtle to stop writing
pd - It pen down the turtle which makes turtle to start writing
ht - It makes turtle hide
st - It makes turtle visible
home - It causes the turtle to return to the center of the screen
label - It takes a single word as a quoted string and print them on the graphics window at the location of the turtle
setxy - It takes two arguments, treats the first as the value of the abscissa (horizontal axis) and the second as a value of the ordinate (vertical axis)
make - It takes a single word as a local variable to contain value.
print - It prints given values.
random - It prints random values.
to - It starts the command loop.
end - It ends the command loop.

Have a look on a code snippets, which will draw a simple box,
1
2
3
4
5
forward 100
right 90
forward 100
right 90
fd 100 rt 90 fd 100 rt 90