[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