Spyder Open Source Development

About

Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts. It offers a unique combination of the advanced editing, analysis, debugging, and profiling functionality of a comprehensive development tool with the data exploration, interactive execution, deep inspection, and beautiful visualization capabilities of a scientific package.

Transcript

[Music] hello the internet welcome to open source directions hosted by open teams
the first b2b marketplace version source support and services open source
directions as the webinar brings you all the news about the fate your favorite open source projects my name is Henry
battery and under growth market here it open teams and I’ll be your host today for open source directions and
co-hosting with me today is hi I’m the deacon and I’m excited to be the co-host
for this episode of open source directions I’m a postdoc at the University of Illinois at
urbana-champaign I work on the YT project and I’m based in Urbana Illinois
thank you and Carlos hi everyone my name
is Carlos Cordova i’m the chroman thing of spider and I’m based in Colombia
that’s it I’m subway here Franconia and right now
I’m doing my masters in subway engineering and I’d be working in spidered for a little longer than a year
hey everyone I’m Juanita I a mathematician from Columbia I’ll be
doing my PhD in cyber security next year and I’ve been working spider for about a
year and a half hi my name is Gonzalo I’m gonna civil
engineer by trade and I’ve been working as a software engineer for the past five years and almost at the same time
working with spider as a core developer I’m currently a core developer at one
site and from bucaramanga currently living in Bogota Colombia
that’s great thank you very much so this is gonna be great episode we’re very
very excited I’ve been looking forward to it all week and we’re gonna kick it off with our famous personalization
section where we’ll give you a tweet of the week or a headline of the week or just give a good introduction of
ourselves so I think we’ll get me diggin do you want to start sure that sounds
great I have a tweet from Ryan Abernathy who works on Pangaea and
Earth Day he tweeted but that I think takes random points in the ocean and
then makes figures of those points you think Panji no it’s a very cool bot I
encourage all of you to take a look at it I am NOT anybody who knows anything
about oceanography so I don’t know the meaning of the plots that you can all enjoy it and see some beautiful data
visualization and Carlos yeah mine is
mejor sports director so today it’s 26 years from of either Sena that either I
Ayrton Senna’s that and I was a huge fan of him so it’s very sad and mine
apparently sorry mine is actually a
tweet from Spyder ID which was about the live streaming that would date last week
and I was surprised that it has a really good like yeah people were like really
enjoying this this new event that we created so yeah check our tweet in Thank
You Anita and we can also find the tweets in the chat if you have a look ah Stephanie why search 1.5 release I was
really a my slightly disagree that I’ve forgotten both of the my two implementations yes and when I had lunch
with for this week is from from our for Widow by Rossum and he was informing
about – 3.9 being out and it has some fantastic new features including Union
operations between dictionaries and a new pet parser among other things so that was that was a fun to it to read
great thank you all for sharing that was great mine isn’t a tweet but it’s a headline
and I was excited the other day doing I had a conversation with my mom and I learned that Australia had flattened the curve so I just wanted to share that
article they gave him a few tips on how he did it and I employ everyone to keep I staying safe and keeping everyone
everyone realize the larger at risk I think we keep fighting this together and yes so now we’re going to go into the
product project introduction section where we’ll give you an outline of
spider and will also answer a few questions that we’ve put together so
spider is a powerful scientific environment written in Python it integrates with a number of prominent
packages in scientific Python stack including numpy scipy matplotlib and
many more they have 5,400 stars on github which is amazing they had around 2,000 3,000
downloads and run across pi PI and Condor and they have around 300 issues
per month and around 64 requests per month so that’s fantastic it is a very popular project I had heard a spider a
lot so I came to learn more about it yeah so can you all tell us a little bit
about why this project was started and what needed bills yeah so the project
was started by pure repo who is a French physicist and the main reason was that
he wanted to facilitate the transition the transition of his team from MATLAB
to to peyten so that’s why he single-handedly design
I created a spider and also a a null byte and distribution code fight the next byte to do distributed with it okay
thank you and I’m interested in learning more that are the history of the name and a logo so yeah the name I mean it
looks pretty pretty cool but the parisa an acronym it means the synthetic Python
development environment so it was also decided appear before that he was called
PI D and fortunately he decided to change the name because it’s way cooler
in spider yeah that’s definitely cool and then you
can also imagine all sorts of you know webs and things like that right and we
all want to have jokes and all of our code right can you tell us a little about alternative projects that exists
out there um so yes Carlos mentioned
spider was aim first at replacing MATLAB for Python users so in this space a
similar project for people out there but in their language would be our studio which is a similar kind of tool
specifically in the land of Python there have been some other projects in the past that is started so I remember one
of those being rodeo by a company called y hat at some point I think development is sold so we’re pretty much unique in
this in this space of course and now with the arrival of Jupiter lab and with
all the different things that it would offer it might get close to what Spyder has been offering for some time now okay
great well history is very very entertaining to hear about that and I love the name
I mean know who started Spyder so yeah
yeah I Spyder was it started about B all right boy in 2009 so I mean we have a very long
history although we have been we became popular sort of three or four years ago
but yeah we have been in this open-source arena for a long time and
well then he was working for the Commission of atomic energy of France at
the time he had a small team of developers so as I would as I said he
wanted for his team to transition easily from from a laptop I turn and I think
Pierre I mean probably most people don’t know him but I think he’s one of the
most talented developers in the synthetic fighting community I’ve ever seen probably the top five
fortunately he he had to retire some years ago on he he left to be maintained
by me can you tell us a little about what technology it’s built on yeah sure
so spite there being a desktop application and being using different platforms
the main stack that we’re using is open source and free widget toolkit that is
written in C++ called cute so that’s a cutie and what this toolkit allows is
for you to create cross-platform applications in a way that the codebase remains practically the same so under
the hood they’re connecting to to each of the native tool kits on top of this stack because we’re in Python we are
using the bindings that connects us to cute which are provided by a couple of
libraries piekid 5 which is developed by a company in england i believe and pi
site which is also developed by the cute company the ones that developed cute so
on top of that we also develop a couple of libraries so some shims on top of Pi
QT and pipe QT 5 and PI sites so that we have an an uniform layer to access the
different bindings without having to change the syntax that’s a project that we started some years ago and was living
inside a spider and we took out so that other project could benefit from this
also on top of this will we have some panels that are based on web
technologies or browser views so we are also using javascript and CSS and our
front end technologies in general thank you it was very good to hear so the who
started the project and some see a great team talking from of you and getting to know about you so who maintains the project so yeah I
maintain the project right now I’ve been doing that since 2013 since August of
2013 before that peer maintain it and unfortunately he had to retire due to
his professional and family commitments since then well I was working almost all
by myself during approximately two more years I mean 2015-2016 I have an involuntary I
have been well previously to be Monteria was volunteer since 2010 and yeah I had
to learn way more things I wanted to to just keep the project going and when I
was working for anaconda at the end of 2016 Travis Travis olefin gave us a little
some budget to hire a little team to work with us and and afterwards I
entered coincide in 2018 then I was working again by myself wanting in the
project and now we have this great team that is helping you to to do that work –
yeah it certainly makes it a lot more I guess relaxing switching from being a
sole maintainer to having other maintainer to hell the load right yeah yeah it’s a lot of work a lot a lot of
work and most people don’t know how much work goes in maintenance and but is
really nice to have a team that is helping me now – really – to implement most most features mostly features I
focus on unanswering issues and answering questions in stock or flow and
also well helping people but I don’t have time to develop or very few time to
develop so they are the ones that we are they creating spider or adding new
features to spider yeah maintenance can be so challenging also because you switch different parts of the code bases
and you deal with all different types of users who have different experience and things like that so can you tell can one
of you tell me a little about what communities you see your users and contributors from as maintainer to the
project sure so just on top to add on the previous question it’s also important
that a spider although looks like an unified project and interface it’s actually over 25 27
different repositories of the firm’s of different parts of the code that we have to maintain so it’s not just one
issue tracker is over 10 over 20 issue trackers that we need to keep an eye on
luckily we have a lot of contributors also from around the world we don’t have well I don’t have any is
like specific numbers at this moment of where people are using it and how many but the spider is interface is
translated into a bunch of different languages so we’re pretty sure that people in those countries or at least
countries where they speak this they’re being used so that includes Brazil Canada China England France Germany
India Iran Japan Poland the Netherlands also the USA and of course Colombia
where we have well the whole team currently today’s is from Colombia but
let’s say that the core team including people that are core contributors and volunteer contributors includes six
people from Colombia plus two from Canada plus two persons that live in the
UK but are from Netherlands and France that’s great it’s good to say that yet
it seems like it runs from a little bit all over the place but you’ve also got a very strong group in Colombia which I loved Ramya
so now let’s check in with Stephanie and Stephanie we did why this spider for so
it was super fun to you use each eyewitness because like the fourth of extra genius isn’t JavaScript and all
the power that is put into a spider ID it’s um
so it looks really nice to see how to put to programming languages to work
together I’m basically some of the cool improvements that what we did with this
work was that the user has the ability to configure multiple preferences of the
plugin so yeah for instance they can decide which shell
they can use in the terminal so if I’m on Linux or a Mac user I can decide if I
want to start journalism bash or tcsh or – or anything that you can install it
you can continue with shortcuts you want to use for copying pasting creating new
terminals and that kind of actions but my favorite improvement for me release
this terminal is that it is able to support the things but a spider ID has
so when the user just changes the theme the eternal will change as well to that
theme and that looks so nice on the new export it is super super fun personally
I like to choose the coarser stuff or if you want to have so it is like really
cool yeah for users that use the terminal inside an editor yeah yeah I
love the flexibility that that offers – that your users could switch depending on whatever their preferences right and
so that makes it also really nice but spider also offers lots of configurations so like it seems like
it’s already you already really have focused on flexibility but yeah so why
Nina can you talk a little about the documentation that you’ve been working on the documentation project you’ve been working on yeah sure so a while ago
Carlos had the idea of making spiders ago better not only week is of what like
what we actually had was was not like enough but because there was a lot of improvements that we made
with Spyder for that are not part of the documentation so yeah so I I made this
whole plan of doing the docks better by doing some tutorial videos so that like
beginners can actually start working with spiders without knowing anything about it
and also I wanted to improve the visual aids on the UM the on the dogs for the
people yeah I think it’s when you like actually see what’s happening in the program that people can understand it
better so I am working on doing gifts which has which has been really fun a
little difficult but still fun to kind of show some of the most important
features on all the pain that spider offers and it’s been a really challenging project because making
documentation means you have to kind of empathize with users and kind of think
what users you would like to see dogs to understand not only like the most
important features of the program but like how can they make the most use of it for whatever they need it so it’s
been challenging but I’ve been enjoying doing the dogs a lot and I’ve learned certainly a lot about Spyder along the
way so yeah I just I think it’s a really important project and um yeah it kind of
it’s going to strengthen the relationship between the the users and
and the program I hope so so we’ll hopefully be finishing some of the
things that we’re doing by by next month so so you would soon be able to see all
this cool things I’m talking about great I can’t wait till we go see those things and it’s great to see that you’re
working in a documentation because we all know how important that is not only for beginners but everyone else who
you’re so start using product so now we’re going to go into the project demo
section where we can give you a walkthrough of project we’re going to show you how the
technology works very very cool and we’re essentially going to show you some
of the cool features on spider and then we need to while you’re setting up could your biz take we’re going to take the
opportunity to thank Quan sites for sponsoring this episode open source directions Quan site
creating value from data so when you’re ready Juanita take it away yeah so are
you all seeing my screen yes
okay so I open a project that we worked
on on a workshop that we did and I run it before this because it was gonna take
a little bit long but yeah with this I wanted to show you basically the most
important features that spider has and like basically the ones that I use the most so this one here is the editor and
this is where you write like most of the code you’re working on and well yeah you
also use the console a lot where you can just kind of run some some comments so
for instance I could just do this print in the console and it just I’ll just get
the Rose here so this basically is a project that we were doing for like
weather analysis history from 2006 to
2016 and it was it was meant to be for data of Association and analysis so
there’s a lot of plots and variables here but I wanted to show you some of the cool things that the grabble
Explorer has it’s one of the other pains that I use the most so for instance here I made a graph of the of the
correlations between some of the variables and spider has this cool of you this cool feature that it shows you
the collars on the young on the data
frame depending on on the numbers so this dark number stars that are the ones are like close to one and this yeah more
pink ones that are the smallest ones and there’s there’s um so there’s a a
viewer for each kind of data and inspired so for instance I’m gonna show
you this so you can you can like change any values here which makes it easier to
manipulate your data and yeah I mean there’s a lot of options you’re in the
variable Explorer you can save your data which which I I sorry it’s here which i
think is really useful when you’re like working a really huge project and you have a lot of variables you can just
like safe your your day then it’s
imported back then into the into the pain and the other like my other
favorite pain is a plus pain that shows you all the plots you you work on your project these are all the plots are
generated with my floods live and you can also save them as PNG s or as the
G’s yeah you can have a lot of them and they certain that they depend on the
console you’re working on so if you want to like kind of have a new console to work on some new some new plots this
this Bloodsworth like go away for for your new console and the other pain that
it’s really really useful as a help pain in which you could get documentation for
any like thing that you you you want so oh it’s loading you can use that the
ipython concept to show the commutation winter because I think you’re having an error with the language the language
server so use the console to get the communication okay okay yeah so here you
can if you choose the console here you can just kind of type any thing then
you’ll find a commendation for and if it is available available it would display two here and options to switch from rich
text to plain text and show this source of it
and then so I think those are the the four like maintains that at least I use
the most but there’s also this history pane where you can see all the all the comments you
have to enter it and days on the past sessions and this file Spain where I think it’s just like shows you in a
really easy way the files and you can like search the files on your computer in the file Spain and here you can also
have access to the outlying Spain the projects Fang which is like it shows you about the outline when you’re like working with projects and another one
that I like a lot is the code analysis that it lets you analyze your code and well I run the analysis before this good
it was also going to take long and it gives you a global evolution of your of your code yeah regarding
existing tags and ways how the way that you actually read your code and it gives you some suggestions so you can like
kind of make better your code so yeah I think that’s some of the
things that that you you can like we’re
which spider in and I think yeah I mean we’ll we’ll post some tutorials also
soon so you can actually you learn more about it right thank you very much manator I
couldn’t share that we’ve got the infinite screens there we’re never to pass upon – Stephanie sure I’m going to
show you something some of the new
features of and out spider terminals ok
now so basically I already installed the
terminal on your spider and you don’t see it you should review paint and be
sure that deterministic on so you can see it and it will appear on the bottom
part of spider next deep history tab so basically this is my terminal so as it
see it just do all the things that are like assistant or no will do so I can I
know to my desktop and I can waste all the things that I have there I can also for example I can see like
the convenience of of a file that’s
empty so then we dig one that has something inside of it I’m not sure
that’s getting to spiders so for example if I want to do CD setup so I will be
able to have all the file here so basically it just do the same thing is
that uncommon terminal there so if you want to change the unperson alized
eternally before you can go to the preference step onto the terminal and
then here you can change the show interpreter you’re working on so it’d be sorry all the options that I have
available online computer as well as these cell references for each type of
cursor and if I want to have the sound in the terminal or not so I’m going to
change this shell to see the CSH sorry and I’m going to change the cursor type
turn or underline when you change the show interpreter you will need to do a
fresh restart on spider so I’m going to do that so your total weight that it
reloads so we can apply the changes now
I’m but see the SH for my terminal I
still can do all the things I could have done before and my personal favorite is
that when you change the appearance of spider so I’m going to change the
– this spider that we use spider three and I went to ask me for a restart
because so we’re going to restart again
probably Stargate Gonzalez pointed out something so ask any questions as we’re going along in this section in the next
section you have anything just a signature and gets those questions at the ends as you can see right now
eternal change within the colors of spider so yeah it is super cool I’m you
know Mac machine so I can just show all the colors that did turn on can put but
if you’re an allylic system you can put each stuff and it will just shut off like the complete colors that the
terminal has so yeah these are some of the things that you can you know modify
the terminal that were not previously like up there local store the user to do so yeah it is pretty cool Walton thank
you very much for sharing I appreciate that that was great to see some cool features and how technology works now that we’ve gone through the
product demo and you’re seeing a technology behind the scenes we’re going to go in and talk about the future of
Spyder and we’re going to discuss its roadmap and where it’s heading which I’m very very excited to talk about so on
that note our colors I’d like to it possible between you yes so well thanks
to TDK micronus we will have a funding for 2021 I mean but not for this year
sorry and hopefully for 2021 so we have a lot of features planned for spider fight right now we’re trying to
stabilize this by default we have put a lot of paper on that and we will continue to do that at least for the
next three or four months but we are ready we are ready planning well we’re
going to add four spider five so one of some of the cool features are the following first we we plan to add an
HTML beware for what generated content from code so what the what does that mean so
the thing is that right now all for example all plots there are generating inspire and static plots as Juanita
showed they are only in line images generated by mato leaf and we we are
showing them in the plots pane so already is to develop a new kind of pain that we’ll be able to show web content
for example that comes from libraries like Vulcan and blood Li and Altair and
also from my PI widgets and B bq+ and things like that so people will have
access to inside spider to these kind of web generated content that will be
really cool because right now I mean you have to resort to the Jupiter not oka
Jupiter laughs to to explore that kind of content so sometimes people prefer to
use a more traditional IDE to do the kind of job and and that’s our plan
people have also requested that for a very long time offered to nearly the I mean the things that we are having is by
default were very very huge and very time consuming we change a lot of course we didn’t have time to do that for that
version but for sure it will be in spiral v and since that requires a mix
of JavaScript and Python and by QT content then stephanie is the one that’s
going to be in charge of that because she’s kind of an expert now or how to do that can you describe a little bit like
what that like the HTM are you loading it locally or which you allow somebody
to kind of add a URL and it would automatically render in their terminal
or something first way we are considering just to load local content again
the thing is that I mean since we are juicing in the background is the same
Jupiter technology that forwards Jupiter laughs we we plan to I mean to grab the
content that comes from from generic differ for example a bucket pots and
then redirect it to to obtain that we’ll be able to show to show that that content inside a web
which bigger think about QT is that it provides a web widgets and as we just in
the background I power by by chromium which is the open source version of Chrome so it is
basically like running or or exploring the those contents those were generating
context inside inside chrome basically really so they don’t really allow a lot of your users to preview their
dashboarding applications locally it sounds like right exactly any kind of
content for example panel generates very nice plots or or voila so those will be
able to be rendered inside a spider itself so and loudly do for example many
people have asked us to to have a way to to generate totally plots inside spider
and right now does not pose I mean it’s possible using a specific back-end that clearly developed to show static content
but of course the nice thing about loudly and also Turin Bach is that you can move a sliders and pan and and
things like that and right now that’s not Bobby will be
so does the first thing the second thing it’s bookmarks in the editor so using
book when you’re working in a midsize or large projects do you want to have kind of a book book mass facility for example
to say to remember that you have to change this class in this file and this
method in this other file and and mix it to and move between those two those two
places in the code quite quickly and quite easily so that’s another feature that people have requested us for a very
long time it’s issue like 610 and we have two times niches so right now I
mean in spider for I am a contributor a volatile contributor I did a back end for that and right now we have to add or
to develop the user interface to provide a nice experience for the and we really planned to do that
unfortunately again we didn’t have time to implement it and it’s by default but it’s for sure is for sure going to be in
spite of five another thing that will be very very cool in and some it’s a
feature that our studio has already and it’s filtering data in the data frame
below so kanita show but we already have a very nice data frame viewer but
unfortunately you can filter a data inside the viewer and if you have for
example that nowadays is usual to have data frames with one 100,000 brows or 1
million rows so if you could filter for example for specific categorical
features or first PC filled numeric features between certain ranges or things like that it would be really really useful there are some extensions
in jupiter lab that could do that but well it’s kind of limited I think but we
we plan to to implement that in QT I mean graphically in the viewer and also
using pandas in the background to do the filtering so hopefully we’ll be will really fast and also useful for the
users and another thing that we also plan to add and it’s more like a vacuum
feature but it will be really useful too especially for the other friends is that we plan to to integrate with a library
called PI ro so PI ro allows people to have I mean to
to not copy data frames when you’re
trying to explore it from two different processes so in our case we have the graphical interface which lives in one
process and the console where we have alread code that lives in a different process so for example when you create a
better frame as when it’s a show that lives in the console so we have to serialize it so make creating a copy of
the data frame and movie to spider to show it in the viewer die right now that
works very well for small data frames and 1 million browser things I’ve had bad people
have told us that they want to explore 100 million data frames so that’s really
impossible because he will take a lot of memory to create a copy in the kernel and move it to spiders or that scootch
but my arrow allows to instead of doing a proper serialization create what is
called a memory object or memory view object sorry and that it’s a special
kind of object in Python that allows to share objects between two processes with
the that well instead of sharing exact the the object exactly they gesture the
memory address of the object so that that doesn’t require a copy and in the
kernel Inspiral but just accessing the memory object in the kernel and a really
really cool so that will allow us to simply by users doing double clicking in
the variable Explorer creating and doing any kind any size of data frame I mean
if you have enough memory to create a frame with 1 million well a 100 million rows you will be able
to see it in spider 2 and lastly I mean from from my side we were well another
cool feature that it’s coming along very well is that we have a specific plugin to integrate the spider notebook and
sorry the the Jupiter notebook within spider to show to kind of work with it
as if it were a desktop application so it’s kind of alpha alpha H beta is right
now by this working really well and one of our four core developers is moving
that from the classical notebook to Jupiter laughs so that’s coming really
really well and it will be available in the next month it’s not sort of a feature in forest by the 5 because it’s
developed as a separate project but it will be for sure with some additions that consolidate or about right now it
will be integrated much more nicely into spider so that’s from my side and now on
solid content I have a quick question for efficient
so can you tell us a little bit about like some of you it sounds like are already working on some of these
features are there are some of them ones that you would like new contributors to
maybe work on with you are there places in some of these new features where that
would be helpful to you or and if so which ones so for example in the book
max bookmarks editor feature we will value the feedback from the community so
I mean for example can one of her componentry contributors well he is
helping us to to understand how to design a good user interface for that so
usually I mean aspire is right now like more than simply tap 70 thousand lines
of code so it’s kind of a big project is not easy to to to start developing for
it but but we still we will value a lot the feedback from the community for
these features for example how to how to create good filters and how people think
group fitness could be created for the data frame viewer those kind of things are really really helpful and for
example Stephanie with the help of a contributor these past weeks and
implemented and very nice teachers to move with the cursor among files and that was basically driven by the the
discussion with the contributor so we just maintain a lot of talk with him him
or her because we don’t know who she who he was who they was but buddy was really
really nice so those kind of feedback is believable okay great thank you thank
you yeah so sorry about that I think you’re muted oh you’re good
you’re good now okay can you hear me mm-hmm okay sorry yeah my thinks no I
was saying that it’s it’s a great question because as Carla said it’s not always easy to to jump in on such a big
project and see how things work because even a simple change demands knowing where to look for it and that’s
that that is not always easy so we’re looking always for new contributors and if there is someone willing to put some
time on in learning a bit of this framework and how its integrated we’re
more than happy to to provide some time in teaching them how they can help us
more yeah so you actually this gives me if I love question for you which is you mentioned earlier that your spider is kind of
across several different repositories right so if somebody wants to come into the project where should they start and
where would be a good place for them to look to contribute yeah so we’re we’re a
lot of repositories in terms of different tools or different projects that complement spider or are used by
spider under the hood but still the main point of entry to work with spiders should be the main spider repository
which is get help at the spider IDE organization let me type that for you
and so you the first entry point should be github.com spider – IDE spider so
that’s where everyone can come and that’s the main entry point in the issue tracker wanita will talk us a bit more
about our social networks as well but we’re also available on git er so if anyone has a question regarding how to
start working with it they can reach out on gator that’s probably the easiest way we’re not always there it’s not like a
live shot like we would like to it to be but unfortunately we’re limited on resources but we’re making efforts to
improve that I would also like to mention once a little compliment that
that we also have a contributing guide I posted the link in the chat too so it
kind of details how to create a development environment how to I mean if
you want to add new content for example icons or code from other projects what licenses are compatible we ARS and also
we have very tight integrations with two external projects called cold aspire kernels and Python language server
we also ascribe their how to work with this project in case you want to to to do and to add
put request to make code changes in those projects I’ll also effects fight so yeah that’s usually the main entry
point to for near contributors thanks Carlos so just to go a little bit more on on
the roadmap and we’re planning for Spider 5mb John is well code is
important but of course we we care about our users and we want them to have native experience so one thing that we
are planning and having and this is a call to contributors around is we want
to have more languages available in Allendale spider interface so as I mentioned before we have currently
Chinese Spanish Russian Japanese French bit of Persian a bit of Polish a bit of
Hungarian so it’s growing we’re using a a web in a web platform called crowding
well we’ll post a link at the end where you can come into your browser or even
your mobile phone and start helping us with translator the different strings of the interfacing to your native languages
so we are expanding that and this suck hold two more people to help us on the
other hand there is going to be an extensive rework of main sites of the spider regarding how the different
components interact with each other what we call plugins so spider is divided in
a set of visual panels where do you see the console this is the editor and non
visual things that might be some menu some linking functionality or something
on the status bar so the way these plugins interact and the API to extend spider is something that is currently
being reworked as part of spider 5 and the aim is to provide a much simpler
experience for third party plug-in developers so that they can extend
spider how they see fit into specific domain areas so that’s one of the things
that I’m currently working on I’m very excited to where it’s coming along with this work we’re going to be able to
expose in a much easier way all the different actions that are available in
a spider so anytime you click a menu in spider or you execute a shortcut this is
executing some action so now we’re going to include something similar to what
other into development environments have like Jupiter lab and visual studio like
we’re going to add a command palette so that users can browse all the different actions that they can take from this
menu and every time a new plugin is developed by a third-party developer all these actions that are are exposed are
also going to be added to this command palette so this is going to provide a much richer experience for users also
because they might start using less their Mouse and stay on with the hands on the keyboards with at the end will
make you more productive on top of that something that we’re also borrowing from
Jupiter lab and order and our interfaces is where there are some panels that
sometimes you need to be able to hide and show easily and on the left kind of
way so we’re going to be adding a side bar that will allow you to dock
different plugins into this section so that you can easily switch among them and not have your interface crowded so
this is also some nice work we’re going to try to do to simplify the user interface another feature that we’re
planning on adding major support is something that users have been asking
for a long time and is adding version control supports so currently the support for that in a spider is very
limited only on projects and only a couple of actions so we’re going to work
on integration with another open source project called git Cola that is also
built with cute and pie cute so we can we don’t have to like reinvent the wheel
from zero but we can reuse a lot of the cool features that they have provided but integrate them better within spiders
so that users have a very rich version-control experience within Spyder
is the version control just forget or would it be for other version control so
so thanks so being eat the major platform that we are aiming and using
it’s going to be initially just for kids and since we’re relying on an external project that is providing this support
for gate it’s going to be only for kids at some point we were considering also
having support for mercurial but this is something that could eventually be
extended with plugins if users are interested enough because currently I
think all the team is very well versed with kids but not other type of version
control system so we are going to really need a hand if we want to support more systems one thing also that we want to
improve is and I think I saw one of the questions going into that direction is that currently you can connect to remote
spider kernels in the spider puzzle but the process of connecting to it is not
the easiest you have to generate the JSON configuration file on the side of
the external server and I start the kernel and make sure that it’s a spider
kernel because we need a specific kernel that knows how to talk to spider about
the other things that’s why there needs and then you need to put this configuration on the spider side so it’s
possible but it’s cumbersome and it’s not the greatest user experience so we
really want to simplify how users can start these external servers and install
any new packages that they need on there on that side and connect to that Pernell without having to go to the process of
copy pasting a JSON blob so that’s also like a cool feature we are looking
forward to and finally in the roadmap something that we want to do is that
spider has been since inception a project aim for Python for scientific
Python development and it’s written in Python but in this area of scientific computing we
sometimes need to work with our languages so one thing that we want to support is providing first-class support
for other languages that are relevant for this scientific computing this can
be our julia c c++ and in these and what
this means is not only providing what this first-class support means is that
you can create these files get all the linking and respecting capabilities but also you connect to the help panels and
the consoles and use the consoles to access these languages so really have
all the access to all the cool tools that we currently provide for the python language available for other languages
that’s that’s great thank you very much for that we’re actually going to call everyone who’s watching and ask you to
fill out a poll to help athens team the spider team and give them an idea of
what language they should provide first class support for next so if you just go
to the poll section it’s just to the right of the questions tab and let us know your answers now we’re going to
getting to the end of the episode sadly but we’re going to be answering a few questions from the audience so thank you
very much for asking these questions I’ll kick it off with a question from Rick can you compare spider to octane
sure so Oh octane it’s basically a free
implementation of madman so it has the same features and the same disadvantages
of MATLAB the I mean of the programming language that MATLAB provides and he
also added a cool new graphical interface a couple of years ago to work
with it I use it in in a couple of courses it’s really nice work really
well I mean not if you want to develop a Lisa when I use it you wanted to work
with a huge amount of data sorry but the
main difference is that out it’s a clone of muddler basically that aspire is not inspired just copied sort
of the graphical interface of MATLAB and but we we have added a lot of
improvements during the years but we we are we allow people to work with might
so it’s based for now it’s an IDE for scientific fight so it’s we don’t
provide support for MATLAB or things like that we users can load a MATLAB
files that have been saved in the in the MATLAB workspace in spider that’s
possible using side plane but that’s the only kind of information to provide
format other than that a madla ultimate it’s for the MATLAB programming language
on this pilot program ok great thanks for answering that our
next question is from even EP how does it been choosing QT in terms of
portability all smoothly especially now that so many apps are choosing electrons
let electron JavaScript not my cup of tea by the way so thanks you for the
question so yeah yes I mean nowadays they go to solution for creating a
cross-platform application is basically just using what technologies and embedded in a packet up so that’s that’s
the standard nowadays and it that aspect spider is more on the traditional side
of things so by using cute we have both advantages and disadvantages in terms of
what we want to achieve in terms of course platform portability and a desktop like experience for users that
really want to have that two T’s is by far the best the best framework that we
could work with I mean we didn’t get to choose it we just continue working on it but at this point cute is really well
structured and designed to to fit our needs on that side then the question is
like yeah could you like port spider to the web browser or something like that and then it’s like cute has other set of
technologies to do that we could use them but that’s not our plan at the moment lasso so really cute
and PI cute has provided an incredible foundation to work and do what we need and it does limit you in terms of when
you do a web application you can I mean the sky’s the limit you can create buttons that work as something else or
you can create interfaces that don’t mimic traditional things that you will find on on the desktop on the other hand
by using cute which is geared to the desktop we have much better integration
with the file system accessing shortcuts and accessing them their line system and
provided an experience for a new sir that actually looks native so one thing
with web applications is that they circumvent the problem but they will look the same whatever they are run so
that for some people that’s convenient for some people that’s not really nice because you have your desktop that looks
somehow and then you open something that looks completely different so cute by by hooking to the underlying
graphical system of fish or fish operating system is really providing a native feel for everything so even a
spider has some things that are specific and global in all systems it will look
like a Mac application or it will look like a Linux application or it will look like a Windows application and these for
some of our users is very important okay great thank you very much for that
sir yes I also like you have seen that
all the electron ops are it really heavy for your computer and that doesn’t
happens with spider like you can have spider running for hours and it will not consume that many things like Hardware
of your computer that’s like some downside that hard but all the other can access
it great thank you very much I appreciate it sadly we’re out of time now so we’re able to answer any more questions but if you want to maybe
provide some answers in the chat that’d be good or we’ll just have to move on now I will quickly go through our famous
Brandon rave section where we basically get 15 seconds to varietal rate about whatever topic we want so Carlos
Gonzales Stephane and Juanita is your soapbox in your up Carlos you only kick it off okay yeah my mail ran right now
is that this is with its 2020 and aspire is really hard to install we had I have
seen users and we have seen users fighting a lot to SunSpider is really annoying but the good thing and that’s
my break too we’re playing to create around installers that will be completely isolated on one try to load
things from other vital installations in the system and hopefully they will work very well and we plan to release them at
the end of the summer probably and they will be initially just for for Mac and
Windows
yes so yeah my rent right now is that I am very much annoyed and frustrated at
the little person that I’m not embracing how to formatting tools of code like black so we keep wasting so much time of
developers contributors my pull request reviewers by saying put a comma here
move these parentheses whatever or or we don’t use these tools because we just say the code does not look like I wanted
to so that’s just really annoying we should as a community just embrace this
tool and move to more important things like what the code is doing and know how
it looks and yeah this is something that we could learn from other communities like like go I mean they settle with go
form a tool and they move down all right thank you we need it
it’s about how people in open source projects underestimate the importance of
documentation and how there’s not enough developers working on the commentation and I guess it’s also an invitation for
for you to embrace working on the commutation because it also influences
the way that users relate to somewhere so yeah let’s go for more documentation
here here awesome yes I’m Stephanie
oh really that I went to the grocery
store and all the people just bought all the ice cream and my only goal that they
was to go and buy some ice cream like I can get an ice cream done by all
the ice cream and bodega yup okay yeah I
promise I won’t buy all the ice cream so if we lived in the same place I wouldn’t steal your ice cream I want to read
about the US Postal Service they have some very cool stamps I have some t-rex
ones that like our holographic and some sets of these three kids ones so I’m
extremely into them and you can order them online so you know I love it thanks great my my brave ever gonna rave this
week and she’s gonna be a quick one but I ran 10ks for the first time you know a big way to think six and a half miles or
just over that so it was good but that’s all we have time for today thank you very much for watching and
thanks for listening and thank you all for being such amazing guests you can find us on twitter at urban teens inc
and at one site AI now where can we find you and spider it’s so we have our main
web page yeah so we’re posting the links there but we also have Facebook Instagram and
Twitter we’re constantly posed I mean things regarding these events or other
life sessions that we are working on or any updates and any blog posts that we do and we’re gonna have also YouTube
channels soon where we’re gonna be posting the documentation videos I was talking about and and yeah so basically
Facebook Instagram Twitter and hopefully I can get some of their answers that
were like missing in this session and in some of our social media for people that
couldn’t get their answers to kind of get them there thanks very much I said he’s our call to action for all
open source contributors sign up to open teams today to build your online profile plan your contributions and get
recognized for the great work you’ve done on open source projects that you care about so join us again next episode
for an open discussion with open take response very much thank you for
attending bye bye thanks thank you [Music]