[Chennaipy] Feb 2017 Meeting Minutes

Saravanan Muthu saravana4285 at gmail.com
Mon Feb 27 11:39:30 EST 2017


Great work on minutes abirath !!!

On Feb 27, 2017 6:31 PM, "abhirath" <abhiabhiabhi27 at gmail.com> wrote:

> Hi,
>
> ### A Gentle Intro to Types by Shrayas Rajagopal
> Shrayas started by building on the basics to introduce more advanced
> concepts later on.
> - What are types?
>     - Class of value
>     - Set of operations
>
> - Why Types?
>     - Humans make a lot of errors
>     - Computers are very good at repeating things
>     - Types help them to bring it together. Helps reduce the number of
> mistakes
>
> - Type Systems
>     - Think of them like magic boxes
>     - They run through the source code
>     - Check if the program makes sense given the set of operations (rules)
>
> - Dynamic Typing vs Static Typing
>     - General myth that static has types and dynamic means no types
>     - He explained that both actually have types.
>     - Static languages get to know about the type at runtime
>     - Dynamic languages get to know about the type at compile time
>     - He then showed examples where errors where caught during compile
> time in C# but went undetected until runtime in Python
>
> - Advantages and Disadvantages of both based on the following criteria
>     - Hackable or not (easy to get started and build things)
>     - Readability
>     - Iteration speed
>     - Enforces tests or not
>     - Size of code base
>
> - Gradual Typing
>     - Advantages of both
>     - Runtime fluidity marries compile time rigidity
>     - Some languages / frameworks with gradual typing
>         - Hack
>         - Typescript
>         - mypy
>
> - Why Gradual Typing?
>     - Rigidity
>     - Better dev tools
>     - Readability
>     - Conscise code base
>     - It is possible to migrate your codebase to gradual typing in part
>
>
> ### GUI Using Python by Gaurav Sehrawat
> Gaurav went over the following:-
>
> - Basic Info
>     - tkinter is a Python interface to Tcl/Tk
>     - Tcl/Tk is cross platform
>     - Tcl is a dynamic language. Tk is an extension provided for
> development of GUIs
>     - Uses native system APIs
>     - Each GUI is basically a collection of frames. Each frame has a
> layout manager
>     - The IDLE editor is built using Tkinter
>
> - Python 2 vs Python 3
>     - Very easy to port Tkinter code. It's very similar across both 2 & 3
>     - Letter casing is different or it is has a prefix
>
> - Geometry Manager or Layout Manager
>     - Specify relations with respect to other elements
>     - Pack (simple layout manager)
>     - Grid (table like)
>
> - When to Use Pack
>     - Simple geometry like up, down etc
>     - Side by Side
>     - Element go on top of each other
>
> - If you need something more complex and specific it's always better to go
> with grid.
>
> - Widget List
>     - Labels
>     - Buttons
>     - Dialog Boxes etc
>
> - He showed the following examples
>     - Hello, World
>     - Pack
>     - Grid
>     - Events and bindings
>     - Dialog Boxes
>     - Matplot lib
>     - Matplot lib dynamic plots using changes in real time data
>     - opencv
>
> ### Networking Tea Break
>
> ### YAML Validation in Python by Vijay Kumar
>
> - He quicly went over the basics
>     - Different methods of representing data
>     - Impacts of representation
>
> - Benefits of text representation
>     - Easy to create
>     - Easy to use Version Control Systems
>     - Easy to review
>
> - Explained about Asciidoc. Humans can enter text. It then converts it to
> other formats using toolchains
>
> - Types of Data
>     - Structured Data
>         - Structures that are easy for computers to understand but
> difficult for humans
>         - They can be manipulated by the computer easily
>         - Example arrays, Databases
>     - Unstructured Data
>         - Human oriented
>         - Harder for machines to work with such data
>         - Eg Word Documents
>     - Semi Structured Data
>         - Easy for both computers and humans
>         - Eg:- XML, JSON, YAML
>         - It undergoes an additional step like parsing
> - YAML
>     - Superset of JSON
>     - Syntax and things possible
>     - Examples of YAML that helps him organise ChennaiPy
>
> - Roadblocks to using YAML
>     - Human input prone to errors
>     - Proper validation is key
>
> - Difficulties in validation YAML
>     - Writing code that handles verification is hard
>     - No schema available for YAML
>     - Examples of nasty error messages thrown when validation fails
>
> - Using jsonschema to validate YAML thus giving better error checking and
> friendlier prompts
>
> ### Lightning Talk by Ashok Govindarajan
> He spoke about his broad top level views on Machine Learning.
>
> - Born out of pattern recognition
> - Mostly comprises of curve fitting, adapt, predict and recommend
> - Why the sudden rise in Machine Learning?
>     - There from quite a long time
>     - Sudden rise due to faster hardware, more storage and lots of good
> sources of data
> - Role of low cost sensors
> - Machine learning preceeds / enables decision making
> - Helps in intuition to data driven decisions
>
> ### Credits
> Vijay thanked Inkmonk for sponsoring the venue and Zilogic Systems for
> sponsoring the projector.
>
> ### Group Photo
>
> Regards,
> Abhirath
>
> _______________________________________________
> Chennaipy mailing list
> Chennaipy at python.org
> https://mail.python.org/mailman/listinfo/chennaipy
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/chennaipy/attachments/20170227/50c7491a/attachment-0001.html>


More information about the Chennaipy mailing list