00:00:03a site on introduction tutorial we’ve
00:00:06got a lot of things to cover I’m going
00:00:07to try to get everything fit into one
00:00:10single video so let’s get to it so first
00:00:12of all what is scythe on so I thought is
00:00:14a superset of the Python language so
00:00:17what this basically means is it’s going
00:00:18to act as a bridge between Python and C
00:00:21/ C++ and this means we’re going to go
00:00:24both ways we can go from Python to C C++
00:00:26or C++ back to Python and a lot of times
00:00:29we’re going to do this all in one fell
00:00:30swoop now the glory of site ton is you
00:00:34can do this without really knowing
00:00:35anything about C C++ it’s just going to
00:00:37generate that code for you now why would
00:00:40you want to do this well there’s quite a
00:00:42few reasons like there’s some kind of
00:00:44objects and like classes and attributes
00:00:48stuff like that that are just going to
00:00:49be more beneficial if we did it and C
00:00:51but actually some of the main gains
00:00:54you’re going to see or just from typing
00:00:56information and that’s it so cases are
00:01:00if you’ve been programming Python long
00:01:01enough and you’ve been doing things in
00:01:02Python you might have heard something
00:01:03like I’ve heard where it’s like hey
00:01:06syntax why are you using Python for
00:01:08machine learning when you could use C or
00:01:11C++ and it would be so much faster well
00:01:14that’s because I’m actually not just
00:01:16using Python I’m using Python and which
00:01:18is have just so happens to be wrapping C
00:01:20or C++ right that’s what we do so a lot
00:01:24of libraries are actually C optimized
00:01:27libraries like numpy pandas these are c
00:01:30optimized libraries they just happen to
00:01:32have basically a python api for you so
00:01:34in most most cases you can actually find
00:01:38but already made c optimized library for
00:01:41whatever you’re trying to do but many
00:01:43times you can’t how or at least
00:01:44sometimes you can’t so one way that you
00:01:47can it still improve the speed of your
00:01:49Python program is to use something like
00:01:51scythe on so the the main thing that at
00:01:56least at the very basic level that you
00:01:58can very simply do a scythe on there’s a
00:02:00lot of really advanced stuff that you
00:02:01can do size on as well but the basic
00:02:03thing that you can do is just add typing
00:02:06information so python is a dynamically
00:02:09typed programming
00:02:10language what that means is when you
00:02:11type in a variable you just say x equals
00:02:14five but later on X could equal Gary and
00:02:17you’re not going to have any you know at
00:02:18least you’re not gonna have any super
00:02:19errors relating to at one point it was a
00:02:23integer and now it’s a string you might
00:02:26have other errors in your code because
00:02:28of that but because it’s a dynamically
00:02:30typed language the variable we don’t
00:02:32have to actually tell the programming
00:02:34language hey this is going to be an
00:02:37integer or this is going to be a float
00:02:39the problem is every time that variable
00:02:41is referenced python has to say wait
00:02:43hold on a second let’s see is this an
00:02:45INT is this a full stream okay okay here
00:02:48it is yeah it’s definitely a string
00:02:50right this takes time now if you’re only
00:02:53doing this once or something in a whole
00:02:55program you don’t really have to add
00:02:57typing information but when you start to
00:02:59scale out the usage of variables either
00:03:02in for loops or maybe you’re just a very
00:03:05large website that has a ton of traffic
00:03:07and you’re scaling just in that way
00:03:10adding typing information can help you
00:03:12so much so that’s what we’re going to be
00:03:15showing here so anyways to get seith on
00:03:18what you’re going to need is first of
00:03:20all you’re going to need to where why
00:03:24are you doing this to me right now
00:03:25there we go so pip install or pip 3
00:03:28install scythe on now I already have it
00:03:30although this might try to put it to
00:03:31Python 2 yeah anyway pip install scythe
00:03:34on this is actually a Python 3 tutorials
00:03:36so actually I would do three install
00:03:38size on anyway yeah I already have it
00:03:41the other thing you need is a compiler
00:03:43or C compiler so if you’re on Linux you
00:03:47already have one yay GCC should be
00:03:50already here if you’re on Mac it should
00:03:53be like Apple’s Xcode I think you can
00:03:55grab and that has GCC I don’t know much
00:03:58about Mac’s so if you’re on a Mac and
00:04:00that doesn’t work for you sorry
00:04:01go to scythe ons website though and they
00:04:04have like a bunch of blurbs on there if
00:04:06you’re on Windows you can use mingw
00:04:08that’s probably the easiest one to use
00:04:10but it’s still a pain in the butt that’s
00:04:11why I’m filming this on a butsu anyway
00:04:15but yeah it can be done it’s just a
00:04:19massive pain so anyway
00:04:22once you have sight on once you have a
00:04:24compiler you’re ready to rumble so what
00:04:26I’m going to do is make a new folder I’m
00:04:29going to call it sites on tutorials and
00:04:32we’re going to go ahead go on in there
00:04:33and the first thing that we’re going to
00:04:35do is let’s just let me just show us to
00:04:37a new document example underscore PI dot
00:04:41pi and let me just open this so what I
00:04:47mean by like static and dynamic type
00:04:49variables it’s like in Python you could
00:04:50say x equals 5 right but in other
00:04:53languages you might have like int x
00:04:56equals 5
00:04:57now what’s icons going to expect of us
00:05:00is either see def is x equals whatever
00:05:03or not or it can be like see PDF can’t x
00:05:09equals 5 something like that now I’ll
00:05:11talk a little bit more about those when
00:05:12we get there but that’s kind of what it
00:05:14is like so this is dynamic right X
00:05:16actually doesn’t have to be an integer
00:05:18like later on like I was saying before
00:05:20we could say X is actually Gary screw
00:05:23this autocomplete anyway um cool so now
00:05:28let’s go ahead and example pie
00:05:31let’s do define tests tests will take
00:05:35one parameter that will be X and mental
00:05:37retains y equals zero for now and then
00:05:40we’re going to stay cool on in whole
00:05:42range of X : y plus equals I and then
00:05:49we’re going to return Y we also could
00:05:53say Y plus equal never mind anyway
00:05:57that’s good enough we’ll go ahead and
00:06:00say that and that’s our regular Python
00:06:02program now what if we wanted to compile
00:06:04is with scythe on we haven’t added any
00:06:07typing information or anything like that
00:06:08but any time we do do that we have to
00:06:11compile it to Saipan so first let me
00:06:13show you just how simple it is to
00:06:15compile to cycle so and create like a
00:06:18shared object and all that so first
00:06:19let’s go ahead and go to file save as
00:06:24example sigh dot pi X so dot py x
00:06:30that’s it save it done so now what we
00:06:35need to do is create the setup PI so
00:06:38let’s go ahead and new document setup
00:06:42sup PI let’s open that in sublime and
00:06:46now we’re going to do is from this utils
00:06:50core imports setup just like a typical
00:06:54stuffs up high and then what we’re going
00:06:56to say is from scythe on bill that’s
00:06:59capital C capital B import scythe on
00:07:02eyes not typical so now we’re going to
00:07:04say is setup and then the extension
00:07:08modules that we’re going to be using EXT
00:07:10underscore modules is equal to syphon
00:07:12eyes and then whatever our actual pyx
00:07:16file is so that’s going to be example
00:07:18dot on earth rather example size dot d Y
00:07:22X and that’s it for the setup pipe so
00:07:25really there’s other things we can pass
00:07:27in here but just for super simple
00:07:29purposes this is really it
00:07:32that’s all you got to do so now all we
00:07:36have to do is actually run this so we’ll
00:07:39open in terminal bring this over here
00:07:42can I do this you know can I do this I’d
00:07:47like to zoom in I know there’s a command
00:07:49for it sorry anyway hopefully this is a
00:07:53simple enough anyway so python 3 set up
00:07:55high build underscore ext – – in place
00:08:00we wish I could make that bigger you can
00:08:04go ahead and run that let’s see if it
00:08:06could control put I tried ctrl + it must
00:08:11be because I’m in a virtual machine cool
00:08:16anyway we’ll run that looks great bunch
00:08:19of stuff we don’t understand but that’s
00:08:20ok the thing that we care about is right
00:08:24here so it’s this this s oh this shared
00:08:27object so what’s created for us is our C
00:08:30file some build information in here but
00:08:32we don’t really worry about that and but
00:08:34actually what we care about is right
00:08:36here this is actual examples sign now
00:08:39what we could do now is new folder
00:08:42I call this step for deprecated and then
00:08:44I’m going to take example sigh what toss
00:08:47it in debt I didn’t mean to go into
00:08:49death as well anyway now what we can do
00:08:52is we can go and do new document testing
00:08:59dot hi Wow got a little excited there
00:09:05anyway and now what we can do is we can
00:09:10import example underscore sign now again
00:09:13I moved example signup pyx just so you
00:09:16can see that it doesn’t import that file
00:09:18but it won’t if you had that file
00:09:21locally it’s still not going to import
00:09:22it like dot pyx is not going to get
00:09:24imported I hope I’m not mistaken on that
00:09:27but pretty sure right example underscore
00:09:31side dot test five so save that we’ll
00:09:35come over here and Python 3 testing dot
00:09:39PI is it not oh it doesn’t won’t print
00:09:42it that doesn’t matter anyway it ran
00:09:46that’s all that matters I don’t want to
00:09:47print it out right now we will get to
00:09:49some more output information later
00:09:50anyway that’s how simple it is to at
00:09:53least build and all that with sight on
00:09:55right so now all we have to do is add
00:09:57typing information you don’t have to you
00:09:59can add as much or as little typing
00:10:01information as you want okay so it’s
00:10:05really up to you how deep down the
00:10:08rabbit hole of scythe on you want to go
00:10:09so let’s start slowly going down the
00:10:13hole now I put the declarations in fact
00:10:17I think I’m just going to pull it out
00:10:19because I don’t really feel like
00:10:25that way to type them all out you can go
00:10:27to Python program internet to get all
00:10:29these as well but I’ll just pull this
00:10:32over cool so these are just your
00:10:36declaration so if you’ve got integers
00:10:40hopefully you can see that well here we
00:10:43go so if you have an integer you can
00:10:45it’s just see that int characters car
00:10:47float double right single precision
00:10:51double precision list Dix objects okay
00:10:56and then you’ve got def CDF and CP def
00:10:59for like your actual functions def it’s
00:11:01just a regular Python function it’s in
00:11:03Python only can’t be referenced within C
00:11:05you’ve got C deaths this is a pure C
00:11:08function and then you’ve got CP def
00:11:10which is C in Python so it goes both
00:11:13ways
00:11:13so a common question is um you know
00:11:17since basically because what CP that’s
00:11:19going to do is also generate a way to do
00:11:21it in Python for you whereas C death is
00:11:24only in scythe on so you could only
00:11:27reference that internally you wouldn’t
00:11:29be able to reference that in any of your
00:11:30Python so then some people might ask
00:11:32like okay why don’t we always just use
00:11:34CP def right well there might be some
00:11:36things of see that you just can’t do in
00:11:40Python so you have to do see death okay
00:11:43so it’s there if you need it I’ve never
00:11:46done anything because I don’t know
00:11:48enough about C I’ve never done anything
00:11:51that I needed to use G def I’ve just
00:11:53always use CP def but if you’re like
00:11:55real talented and C and you know a lot
00:11:57of tricks to the trade see def you might
00:11:59use but not me
00:12:01so anyway there’s that so so those are
00:12:05the various declarations that we can use
00:12:08so now we can do is go back to example
00:12:11scipy YX and what are all the things
00:12:14that we can do here so one thing that we
00:12:17can do is like X we know X is going well
00:12:24we’re going to we’re going to enforce
00:12:25that X is going to be can’t twice so int
00:12:28X so in the parameters you don’t have to
00:12:31do seed of CP def you don’t do anything
00:12:33like that really you’re doing it right
00:12:36here so
00:12:36death in this case is going to just
00:12:39simply be a Python function but we can
00:12:41make it C PDF if we want to we can also
00:12:45specify what the return is going to be
00:12:48in our case it’s going to be an int so
00:12:51this is kind of confusing so normally I
00:12:55wouldn’t necessarily cover that
00:12:56immediately so first of all just we’ll
00:12:58leave this alone let’s just give typing
00:13:00information to X well that’s possible
00:13:02and hopefully by the end I’ll come back
00:13:04and throw that in there but then we’re
00:13:07going to come down here Y so Y again is
00:13:10just going to be in can’t so we’re going
00:13:11to do we’re going to say see death why
00:13:14because um so I guess I’ll just go ahead
00:13:19and contradict myself but in there’s
00:13:21really no reason to what we won’t ever
00:13:25need to access Y again so we can just
00:13:28use C def here so I guess probably what
00:13:30I should the way I should have said it
00:13:32is my functions like the actual
00:13:33functions up here I would never use most
00:13:37likely see dev I don’t think I’ve ever
00:13:38actually defined a whole function at CF
00:13:42but anyway that’s what I was thinking
00:13:45when I was going through it I’m sorry
00:13:46anyway see def why because we’re not
00:13:49going to access Y anywhere but this
00:13:51function also I so this is just think
00:13:55this can get kind of tricky but yet you
00:13:57want to pay attention to really all of
00:13:59the variables so in this case I is a
00:14:02variable and believe it or not Python is
00:14:05going to ask every single time we hit
00:14:07this I bar and here as well what’s the
00:14:12type of I well we can help it and we can
00:14:15say see this int I and we forgot to give
00:14:18into one here so anyway I was too busy
00:14:21explaining why I just kind of true to
00:14:23myself so see deaf int I and we don’t
00:14:25have to give it a starting value there’s
00:14:28no no point so there’s that then you’ve
00:14:31got I eyes already been defined X has
00:14:34already been or rather I already has a
00:14:35type X already has a type why are the
00:14:37other type I has a type Y has a type now
00:14:40now that we’re at the end though Y is
00:14:42actually the return so instead what I’m
00:14:45going to say is see PDF
00:14:46in because we return an int so aunt is
00:14:51like what’s the value of the function so
00:14:54that’s why you’ve got int coming up here
00:14:57because this function is returning an
00:15:00int kind of like this bat this variable
00:15:02right isn’t so right before the function
00:15:04and you give what it’s going to return
00:15:06you don’t have to do this by the way we
00:15:08could just use def it would be totally
00:15:10fine anyway CP def int test into X yeah
00:15:15I think this is all good so we can save
00:15:17that and we really just moved to run
00:15:20setup PI again hopefully we’ll get away
00:15:23with that yes and then we can test it
00:15:26again okay but that’s relatively um not
00:15:29exciting right now so what we’re going
00:15:31to do now is come back over to testing
00:15:34and let’s go ahead and let’s import Tyne
00:15:37it will say sine equals time it dot
00:15:40climate assignment and we’re going to
00:15:46run I think we can do just one line so
00:15:51we’re going to say example underscore
00:15:53owes its I dot or example side dot test
00:15:58let’s say five and then this means a set
00:16:02up
00:16:02so we’ll say set up equals and this will
00:16:04be import example sigh kind of running
00:16:09off the screen hopefully I can get this
00:16:11to fit
00:16:19cool and then we’re going to say PI it
00:16:22will we need one more variable here
00:16:24let’s do a number equals 100 and then
00:16:34what we’re going to do is go ahead and
00:16:36take this line copy paste we’re going to
00:16:38call this now PI and example PI import
00:16:44example underscore PI cool all right so
00:16:49those are the values so none of those
00:16:50print let’s print psych on opine for the
00:16:54x so basically what this does if you
00:16:56don’t know what time it does I do have a
00:16:58tutorial that you can go python permanet
00:16:59search time it and you’ll get a brief
00:17:02tutorial on it it just times how long
00:17:04these take to to go and you can do like
00:17:07whole chunks of them set up we’ll just
00:17:09import it first so we don’t calculate
00:17:12how long did the import take and it’s
00:17:15just a really handy thing to actually
00:17:16time operations because these operations
00:17:19are really really fast and tiny changes
00:17:22in what’s going on just in the
00:17:23background on your computer kind of
00:17:25seriously effect if you just use like
00:17:27import time to time these operations and
00:17:30probably number 100 is too low as well
00:17:32but anyway let’s just test it so print
00:17:36and let’s say Saipan is and it will be
00:17:40some variable X faster and then we’ll
00:17:45say dot format at what spy out of sign
00:17:50so let’s do
00:17:57[Music]
00:18:03pi /
00:18:05yeah basically how many times a psyphon
00:18:07go into Python sorry my brain is I think
00:18:14that’s right
00:18:14anyway now so now we’re going to go
00:18:23ahead and do is just run this in the
00:18:25terminal so come over here
00:18:28and now let’s run Python 3 testing dot
00:18:30pi for 10 minutes up let’s go over here
00:18:35where did we say – oh right here time it
00:18:40try again
00:18:41cool so in this case we can I mean this
00:18:44is a little hard to read but we’ve got
00:18:46the multiplier here and so we see
00:18:48saikhan is actually 8 times faster
00:18:50around one more time this can still vary
00:18:52yeah 12 times faster now eight times
00:18:57right so because let’s go ahead and do
00:19:00let’s look at thousand maybe ten
00:19:03thousand hopefully we can run that
00:19:05pretty quickly oh my god still a huge
00:19:11variance okay somewhere between five and
00:19:16fifteen times faster anyway bottom line
00:19:20is it’s clearly faster like we haven’t
00:19:22actually been slower so that’s not too
00:19:26bad now what I like to do is is try to
00:19:31drive home why is it faster though so
00:19:34coming back to here here where’s the the
00:19:44largest gain being made so for example
00:19:48what if we said you know if we didn’t do
00:19:53this like what if we just got rid of I
00:19:55here and is just remove that save and
00:19:59then now let’s just rebuild retest and
00:20:03then hmm
00:20:05that’s um not much faster now it’s
00:20:08actually slower whoops oh shoot what did
00:20:10I do
00:20:10I think I
00:20:10rebuilt it there we go anyway slower a
00:20:14little faster little faster slower
00:20:15slower right so just that line made a
00:20:20huge difference right
00:20:22what if okay so clearly into eye matters
00:20:25what about what oh I’m not appreciate
00:20:28commenting should work it yeah there’s
00:20:30no reason why that won’t work but I’m
00:20:31just going to leave it anyways let’s
00:20:34rebuild test it again
00:20:36Oh exception
00:20:39why reference before oh yeah what a noob
00:20:49try again there we go so um so now it’s
00:20:57like three four nine three four four
00:21:01four four okay so clearly that one also
00:21:03matters right that made a big difference
00:21:06okay
00:21:08trying to think of what else we could do
00:21:10we could we could take away the typing
00:21:11information for X now this should be
00:21:15checked only once right it’ll it’ll go
00:21:19through a range but it should only be
00:21:21checked once so I’m going to wager
00:21:22that’s not going to have a huge impact
00:21:24but let’s see so we can build let’s test
00:21:27right
00:21:28test test test right not a big impact
00:21:32because it was only referenced one time
00:21:34okay
00:21:36tracked I think we’re all set on all the
00:21:39other variables at this point so so that
00:21:42wasn’t really truly necessary so what
00:21:44I’m trying to point to though is that
00:21:46the huge gain happened basically
00:21:48everything that was involved in this for
00:21:50loop because every time we go through it
00:21:52we’ve got to reference that variable
00:21:54except for X because X is only value X
00:21:57isn’t being reassessed every single time
00:22:00we go through this loop how do I know
00:22:02that because we didn’t gain games by you
00:22:06know not chain you know like like object
00:22:08we all need the reference value of X
00:22:10once before we know okay how many loops
00:22:11or interations are we going to do we
00:22:13don’t need to read you know keep
00:22:14rear-ending what is X what is X that’s
00:22:17not that we don’t have to do that so
00:22:19anyway okay so that’s one thing now
00:22:22knowing what we know
00:22:24in this loop so you know maybe you want
00:22:27to impress all your friends who aren’t
00:22:29Python programmers and you want to say
00:22:30this is why I use Python and I know how
00:22:33to make Python so fast so what’s one way
00:22:35that we could make this better
00:22:37because a lot of times you know maybe
00:22:38you’ve heard that scythe on can help you
00:22:40be like 200 times faster right so what
00:22:43could we do well we could just make that
00:22:46that four leaf larger so like what if we
00:22:48said rather than five what if we said
00:22:525000 we might have to change this number
00:22:56of iterations let’s do a thousand save
00:23:00we don’t need to rebuild we just test
00:23:02again boom 119 times faster they’re out
00:23:0736 that’s ugly let’s go back to get one
00:23:091801 24 okay so we’re pretty we’re
00:23:13pretty ballin at this point on stripe
00:23:1550,000 Oh taking forever come on it’s
00:23:22going to be faster Wow
00:23:25I think we went down in speed 140 times
00:23:29we’re going with that one
00:23:30okay so we’ve written code that’s 140
00:23:33times faster anyway okay so there are at
00:23:39least a few examples or at least one
00:23:42example of some simple code but adding
00:23:45some simple typing information which
00:23:47ones actually mattered which ones really
00:23:48didn’t matter for example two let’s get
00:23:50rid of the definition here so let’s just
00:23:53take away that entire top line again
00:23:56this shouldn’t have really a huge effect
00:23:58I hope I’m not wrong but Python 3
00:24:01testing dot pi obvious we left our loop
00:24:04gigantic but anyway cool yeah so but
00:24:07they’re going to have like a huge impact
00:24:09in before like 36
00:24:10yeah cool so so that’s not really
00:24:13essential that you give it this the only
00:24:16time I may be essential really prime in
00:24:17my opinion is if it needed to be a seed
00:24:19if but anyway or if you’re calling the
00:24:22function whole bunch of times in a loop
00:24:25make it CP desc
00:24:26give the return of it and then give this
00:24:29of
00:24:31okay now let me go ahead and build that
00:24:35one more time let’s test it and I want
00:24:37to show one more thing for I let you all
00:24:40go and that is the the HTML kind of
00:24:44conversion that you can get from this so
00:24:49so what I’d like to do is let’s take and
00:24:56try and set how I want to do this
00:24:58because we can’t let’s go to example dot
00:25:04pi so let’s copy this paste so weird is
00:25:12pasting the original example dot PI into
00:25:14the new example side out pyx kind of
00:25:17what we had initially I saved it and
00:25:19then now I’m going to do is go into the
00:25:21terminal and I am going to do I think
00:25:25it’s just Saipan – a and then let’s call
00:25:30this what was the example it’s just
00:25:34example underscore Sun vample underscore
00:25:36its size dot p YX will run that and what
00:25:42this does is it just creates your C file
00:25:47and ah even though this is here it
00:25:50doesn’t create your s o file I don’t
00:25:54know why I wish if it was a single file
00:25:56you could just do size on a rather and
00:25:58have the setup PI or some form of saipan
00:26:01if somebody knows that you can do that
00:26:03without setup pi let me know because it
00:26:05doesn’t make any sense like why wouldn’t
00:26:07you just be able to build it with just
00:26:09the size on call but for whatever reason
00:26:11you can but what I’m interested in is
00:26:13the HTML file it produces so what we can
00:26:16do is we can open this in Firefox and
00:26:19basically as it tells you right here the
00:26:22yellow lines hint at your Python
00:26:24interaction interestingly enough y
00:26:26equals zero
00:26:27apparently isn’t super close I think
00:26:30it’s there it’s just the least
00:26:32interactive to Python but anyway you can
00:26:35see all of you know how close are we in
00:26:37in Python so clearly the definition is
00:26:40just pure Python and
00:26:41then the for loop is very heavy in
00:26:44Python so now we can close this and
00:26:47let’s go back here let’s just do ctrl Z
00:26:51save and then let’s now do the same
00:26:54thing again we’ll get a new HTML file
00:26:57let’s open that one and now we get
00:27:00basically only one line that’s the first
00:27:03line which is CP def because we wanted
00:27:06to be able to reference it and use it in
00:27:07Python but other than that the rest of
00:27:11this is nowhere near Python okay so
00:27:16anyway pretty cool so so what has it
00:27:19done for you basically like this for
00:27:21loop has been written for you in C so
00:27:25that’s in this file here and I don’t
00:27:27know about you but I’m not going to
00:27:29write like especially if you have like a
00:27:30large Python program I mean it’s going
00:27:32to generate like yeah like let’s say 50
00:27:34lines of Python then generate like
00:27:36hundreds of lines in C for you which
00:27:39would be very annoying to to write
00:27:41yourself and I probably would not be
00:27:42successful but obviously this is it’s
00:27:45pretty successful super tested I like I
00:27:48said before it’s used in a lot of large
00:27:50libraries like numpy pandas um’s and so
00:27:52on it’s a huge list of packages that use
00:27:55scythe on okay I think that we’ve made
00:28:00it through everything I wanted to cover
00:28:01at the the most basic level hopefully
00:28:04that was simple enough
00:28:06I personally was really surprised I had
00:28:09looked into scythe on quite a few times
00:28:10in the past and I just kind of found the
00:28:13documentation to be not so great I found
00:28:15a lot of kind of like tutorials on
00:28:17Saipan but it was really like talks on
00:28:19Saipan without actually showing exactly
00:28:22the code and so for the longest time I
00:28:25just couldn’t figure out Saipan but then
00:28:27when I figured it out and I realized oh
00:28:28my gosh it’s basically at least a
00:28:31beginner insight on all it is just
00:28:33typing information that’s it there are
00:28:38more interesting things that you can do
00:28:40obviously if you’re C programmer or C++
00:28:43there’s some other things you should
00:28:45look into also we can’t do it in this
00:28:48for loop but there are certain things
00:28:51that we can add with like with no guild
00:28:53so this will release the Gil for you
00:28:55you can do things unfortunately you’re
00:28:57not going to be able to do this you’re
00:28:59not going to be able to modify this
00:29:00without the Gil obviously you couldn’t
00:29:02do that and see anyways like you
00:29:03couldn’t
00:29:04you’d have to handle for that but
00:29:06there’s some things that you can do
00:29:08without the Gil as long as they’re not
00:29:10you know changing some sort of shared
00:29:12variable or something like that but yeah
00:29:14there’s there’s quite a few other things
00:29:16that we can do with scythe on and I
00:29:18might cover them more in the future but
00:29:19at even the most basic level just adding
00:29:22typing information can give you huge
00:29:24improvements so anyways that’s all for
00:29:27now
00:29:27if you have questions comments concerns
00:29:29something specific you’d like me to
00:29:30cover in scythe on feel free to let me
00:29:33know below otherwise as always thanks
00:29:36for watching things for all those for
00:29:37subscriptions and I will see you in
00:29:39another video
”