Okay, so good afternoon. Thanks for joining this session. The whole idea of insight from help proposal is to, you know, look at the usage pattern, as well as patterns on the problem which user are encountering when they make use of the Node.js and what type of problems which they report in the help proposal and see what we can do as a team to discuss those things at high level and see if there is any trend that is happening and if there is any thing which we can do at the design level, at the code level or at the documentation level, back in the code so that the overall user experience is improved. So that's the whole idea about this. I've been spending some time on the help proposal for the last maybe one and a half years or so. So couple of caveats, these are my personal observations, not necessarily representing any group or the project as a code. And then help proposal is a running of code that means all the years there have been hundreds of issues. I'm not representing all the issues as such. The ones which came across me, the ones which I was part of, you know, problem declination, et cetera, are the ones which are represented. And then I put recommendations against these of the issues for each of the problem patterns. Again, those are not necessarily hardbound or final recommendations. I just put some observations as based on my understanding as a team. My expectation was that we look at that as a baseline and then apply some collective intelligence and see what we can do about that. So that's the whole idea. Then let's look at the first one. Against each of the problems, I guess I have four of them at high level. Each of them I have the problem and the root cause and the recommendation. So NPM and node installation, reinstallation and uninstallation or migration, reinstallation or migration. This is by far the most common issue which we see across the board without any exception. So if you have 100 open issues, you see around 40 of them belonging to this category. So that's a very conclusive scenario. So what is the problem? Problem is users are not able to install node jays. Probably they get exceptions. They get a file not found or some native level crashes or things like that. Then they're not able to upgrade. They had a value healthy node installation but when it comes to upgradation, it breaks in very strange manner. And then uninstallation again, either uninstallation is not complete or it leaves some files in the file system, et cetera. And they get these sort of exceptions as well. When it comes to NPM, all the things which apply for the node jays installation apply as it is in addition to that and number of other issues like proxy failures, network connectivity failures, the mismatch of the version between node and NPM and all sorts of things. So I would say NPM installation issue is by far more problematic than the node jays related issues. So the root cause in my opinion is that you have a number of distributors with respect to the node. At high level, I will classify the two. One is the one which has a native installer, something like AppGate or Brew installed in case of Mac OS. The second classification is the distributor has a custom installer, something like the one which official node jays community delivers, which has an MSI installer, something which is associated with that. So native installer versus custom installer. Now, if you install node jays, say version 10 using the native installer, and then you want to install or upgrade node version to 11 or 12 using another installer, then there is no coordination between these installers about where you kept the cache files, where you kept the hidden files or the configuration files, et cetera. What are the shortcuts which you kept and when you upgrade, which items you need to delete, which items you need to replace and things like that. That is by far the most common root cause in my opinion. And then when it comes to NPM, it's more tricky. I haven't looked at the NPM client as such to understand what is the type of problems that comes in. But in my opinion, NPM client, which is NPM CLI Dodgers performs a number of operations, like resolving the module, connecting the network, and then look at some of the cache files in your local file system, and then try to make some meaning out of it and finally downloads the module. And then if there is a native component in that, you build it using the build tool chain and then finally install the module. In that sequence of operations, there could be n number of expectations that could fail. For example, the version of Node.js, which the tool figures out is not necessarily the node that is prevalent in the system and things like that. At high level, I will classify that in the two. One is resolution of the NPM script itself. As we know, NPM client is a JavaScript, which is NPM CLI Dodgers, and that is resolved through a number of magical steps. NPM has a script is available in the path, and then that script basically redirects to another file called NPM CLI Dodgers. So that resolution can fail based on what shortcut you've kept in your file, et cetera. Then the NPM CLI.js, in turn, resolves the Node executor website because the first line in the NPM CLI.js is she bank and look, which means you are resolving back the move and then this multi-level resolution and go for a toss like that. That would be one of the main root cause in my opinion about NPM installation or uninstallation failure. I absolutely have no idea about what are the steps that are involved in NPM CLI Dodgers to make any recommendation. But in my opinion, the installation should be standardized across all the distributors. We should have a conversation about with all the distributors how you want to install or how you want to uninstall or upgrade. Should we have a standard protocol for the steps that is agreed upon by all the distributors? So when you're saying distributors, do you mean like through the Devin registry and the clouds and like how they're doing it and their thing? Yeah. So you're talking about like anyone that's basically giving a developer note? Yeah. Okay. I just wanted to make sure I understand that. Yeah. So in my understanding, node source, distributed node that had distributed nodes and the proof, the macOS guys and our official use. Yeah. So each of them have their own protocols. They assume that it is, and the end user uses their own tools to install or uninstall. So that's where the problem comes. And then when it comes to the NPM installer, I commonly look at the NPM debug.log to figure out what is going on. So that's it. That's okay. It's not a bad tool at all. It provides a step by step, a log about what is happening and what stage these things are failing, et cetera. But one of the serviceability pitfall, I would say in the log is that the logs, the log provides too many information for a minor issue. Whereas for a very critical issue, it doesn't provide any information. So basically the balancing of the log frequency or the normalization of the quality of the log is very, very securely represented.  The log is not necessarily normalized or recorded in proportion with the actual activity or its nature that is being captured. So that's the key thing I want to highlight there. Then I have no idea about who owns the NPM plan at this point. I believe there is an upstream, but I don't see anybody raising a PR or addressing an issue as such. We always download the upstream and bundle it in notices. It's NPM. It's NPM. I was gonna say, I've had a question about that recently. Is it NPM Inc, the company that supports people that work on that successfully? So NPM, there's NPM 4, and there's NPM Inc. NPM Inc, regardless of who, whether it's in the org or the Inc, I believe Inc ultimately holds the IP for things. Yes. So. They currently hold it in people too. Yeah. I just did a course on this recently, explaining of this in form. I was always wondering like, that we did some, it for derailing there. I know. Yeah, it's from NPM. Okay. I'm sorry, do they control what the storage game is? Yes. They have 100% of it. Ultimately, yes. Well, that said, I am not sure whether they have granted merge rights to anyone outside of the company. I believe they were working towards that. They were, and they did not end up working on it. So they were able to commit things? Yes. Oh, absolutely, yes. That's why I can't say that. Yeah, then I guess the most important thing that we should be looking at is NPM on the NPM client, but the issues or the problems that's coming from the installation is always reported against lodges. So either we should have a documentation or a best practice that says it should all get redirected over there, or we should have a better stake on an ownership with the NPM client. Oh, like a redirect, like directing them to the NPM.community for questions related to NPM. Like an arbitrary response, like an arbitrary point of view, give or minus. This is a dumb question, I think, but NPM, is that not recommended for folks to start with NPM? Would that help with the OI installed 18 months ago when now I have installed 10, but I forgot how I installed eight? Yeah. Do we recommend OI? We do recommend NPM, but the problem is it's only the NPM. It doesn't work on NPM. NPM windows exist, but it's not feature compatible. It's not pretty. Yeah, and like, I mean, I guess, I guess with windows 10 and WSL, getting better, like, I'm more happy. Like, I might get a Windows machine just to use that to see it if it works and see what the issues are, but other than that, like, yeah, for Windows, it does work. That's how I recommend to people in the courses I'm making right now and install through NPM client. The way it goes, They're used to that by now. They shouldn't have. Yes, exactly. There is a package manager for Windows called Chocolate T. Yeah. Anyone familiar with that? Yes. Is it a Node package manager? No, it's a Windows package manager. Oh, like, really? It's basically through on, well, I think they're through on Windows, but it's also through for, it's basically through for Windows. I see like a third party maintaining and Node.js installed through Chocolate T. Yeah, I believe that is also, sometimes I recommend it down though. Interesting. I've seen that in tournament myself. Okay. I don't know if it's true or not, but it's good. Sorry, we totally, you're out of here. Yeah. Yeah, so it would be a good idea to look at tooling as an option to redirect the issues to NPM, but then my question would be, if the open culture for the whole process of addressing issues in the NPM community, if it is totally different than the inclusiveness, the openness and the activity, activities of the Node.js community, and eventually there's a gap in the user experience. In an ideal world, what would the community, like the interaction with, let's say, because I know NPM like totally closed their issues on GitHub. If they, you know, undo that or like some other method to do that on GitHub, what would that look like to you? To be able to work well with the help people. Yeah. So I'm curious about that and how we can deal with that. I mean, in my opinion, we're having better control of the NPM CLI.js, the whole institutional migration process. Yes. If I were owning the NPM CLI, what I would do is I will look at improving the overall loading process of the serviceability process and better document. If you remember, we have a well-claimed documentation around module resolution. I mean, do you look at the Node modules in the current folder, then you look at the parent folder like that, you will go up to the vertex of the file system and then you look at the package.js. There is a sequence of steps, maybe some 20, 25 steps that is involved. That is well-known, well-documented and well-controlled. So if you have something of that sort for the NPM installation process, that will really help. So, but for that, we might need a more better problem. We should be able to recover the code. We should be able to put a more structured logs and then a better documentation. Yeah. So if NPM communities are able to do that, that is better. Otherwise, somebody in the code doing that, I guess, will improve the situation. Wait, so are you saying you make the recommendation that we should have access, we should have commitment to NPM? That's right. Well, I mean, to get the conversation starting, somebody from the Node community taking this ownership of championing this as an initiative, I mean, having a conversation with NPM, look at the ways to improve the overall NPM installation experience. Yeah. I would say this is that has happened many times. Yes. So it's not that we have not, it's not for trying, but it's sort of similar. I think if we look at like me, right, other upstreams and examples of that for Node and how we're affected by it, we have to spend, I think nearly a year in advocacy and talking, people from our project talking with that team to get them to work with us. And they were already very, they were amicable and they already had relationships, but we sort of codified it as we need to be communicating on a regular basis, so that we're both benefiting from each other's work instead of sort of like failing the effects of somebody's work. Whereas with NPM, we have sort of the added complication prior to our community relationships between NPM folks and the rest of the Node project. Early on, the Node projects, some of the contributors were much more forceful in sort of the demanding, a little bit entitled in terms of we meet, like, of course we need to have access to be able to modify NPM, but that's like stepping into somebody else's project and telling them that you're gonna take over. And I think because of that insensitivity then, it sort of put us at a standstill. And unfortunately, I shouldn't say unfortunately, the leadership and the people who worked on that it has not changed. So they still have that memory in the history of not working well with us, even if on our side the group, the people have changed. So it's not that we shouldn't have that conversation again because it's a new group, but that's like a, that's a project. It's not, because I think that's, this all ends up being side effects, right? Our past choices. And it's not even our past choices, it's like individuals in the project. Yes. The project. But just to give you, if you were to ever suggest that on GitHub, just to give you a heads up, that would be some of the feedback you may end up seeing. Okay. Sure. Let's move on in the industry for now. Yeah, sorry. No, no, right, right. Okay. So next one is on the child process. So this is not necessarily a coherent or a connected set of problems, probably discrete and, you know, one of the kinds in many situations. So we have an outstanding problem on targeted child data. So what that essentially means that if you're spawning a child process, and then it's a small running process like a CLI or a tool that just brings a piece of information and just exits. So because the console.log is asynchronous, the main process, the main child process is not really great for the console to be completely flushed out and it comes back to the parent, essentially using the data. So this has been the ever since I can remember, I joined the project, I've seen this issue and on and off we get people complaining about that. We know the problem, what it is. We know how to solve it is, but there are side effects. There are known solutions which have more severe side effects than the advantage it can bring about, et cetera. But there are one or two options which I believe is something which we can look at to solve this once and for all. There is conditions with spawn is basically again a design level issue. When you spawn the child process at up to some point in the protocol, the child do not exist, which essentially means all the issues that's coming out of this spawn sequence is thrown back to the caller in a synchronous manner. And the moment the child comes into the life, then any issues that is coming to the process which is just got born cannot be passed back to the caller in a synchronous manner because it's running asynchronously. The child is completely independent. So that means there are still the errors that thrown us in a synchronous error back to the parent. So what that essentially means is when you're spawning a process based on where the issue happens, the caller should be prepared to catch the error either in a synchronous manner or in a synchronous manner. And if you don't have enough insight about what type of problems you are expecting, unexpected issues can happen in the consumer side. So that's a pretty tricky little thing. We don't have a complete solution for this yet other than documenting this fact, which I just stated. That is, it's a sequence of activities and up to some point, the caller should expect it as a synchronous program and beyond that, it should be in a synchronous manner. That should be stated and documented as a protocol. So that's what essentially I meant by normalizing the runtime and then performance and footprint issues with the spawn. So the way the spawn works is you replicate the parent process in all its aspects by the fourth system port and then try to implement the trial process within the fourth child. So depending on the nature of the child, say the child is a small unit process like LLs or DWD, essentially what you're doing is just replicating the whole Node.js process in the child address space and depending on how much memory the parent has been consuming, say two GB or three GB for example, you are allocating as much of memory for the child, basically causing a lot of memory footprint issues. There could be a better capability than the memory footprint replication and one class of customers can get affected because of this and especially if you're running things in a cloud deployment, for example, memory is charged and then this particular way of doing things can potentially cause issues for the console. So the recommendation is look at ways to spawn the child in a customized manner depending on either the deployment scenario or the type of child you are spawning, et cetera. So fortunately, the spawn API has a parameter called options which can be overloaded with additional flags or additional input which you can pass. So that means the API provides a capability or the opportunity, just need to look at what is the right way to implement that. This is child's process spawns and the memory of the parent is low but then the child process is higher, will that cause an error as well or without cause an issue, can it grow? It can grow, okay. So the child process at the time of this fork, doesn't require any memory. The child process grows organically based on its memory demand which will anyway need fresh piece of memory. It cannot make use of the parent's memory ansities. Say for example, the parent is one GB and the child is going to be 10 GB. The one GB replicator into the child is of no use to the child. It has to anyway allocate new fresh 10 GB. So essentially the one GB of parent memory becomes useless to the child and it becomes an overhead in the whole system. Is there a reason why we've not addressed that? We don't have to get into it, it's too distracting. So there are discussions that's happening. So it's about being able to implement it in a platform neutral manner and being able to do it in a non-breaking manner. So child process has been there in the field for quite some time. So just not touching anything. Yeah, yeah. So the third one is embedding scenario. Embedding basically means, you know, using node from an existing native application. That means you don't use node.exe or the node binary ansities. Instead you have your own native process which is running a major chunk or a larger chunk of your workload and you just want to make use of node for a specific subset of your workload. Say for example, an IO bound or a interactive workload as such. So the problem which we see is that the embedders do not know how do you consume node? What is the entry point to the node? And what are the things which you need to initialize? What are the things which you as an embedder can customize? And what are the control flow points? What are the two numbers, et cetera? So if you look at the main file that node implements for its entry point which is node.ccc or node.main.cc, you'll see at least three start functions, four init functions and one main function. So basically these are entry points which have different types of abstractions. One for example, one start function takes the whole arguments as it is for your input. Another init function takes or another start function takes a subset of that instead provide you with the flexibility of defining the inspector or defining the V8 engine or the isolate and things like that. So essentially you have five or six discrete APIs to call and control the sub modules of V8. This is good, but it can, it can lose the speed. You don't necessarily have five or six discrete use cases for embedding. You may have two or three but you may have maybe more than that but the whole idea is but do we have a documentation or do we have a higher level of abstraction that any embedder can be able to relate? For example, an embedder may not be interested in customizing an inspector. It will just go by what the node.js is providing as it is as a capability. And again, if you are embedding node.js you don't necessarily need to control the V8 engine as it is. So the whole idea is either talk to the embedding users or collect these feedbacks and then look at one of the two or three discrete way of embedding node.js, define it, expose the entry points and then document. At this point, one of the main pain point is there is absolutely no documentation. So people look at the C++ APIs I mean look at the source code and then they open questions in the node.js slash help report and then they just get along. So a question I have, so I know Electron is an embedder. Are there any other examples of embedders existing? Like one line of embedders or things like that? So I know IBM, we have a product called IIV, IBM integration bus. So in that it's a messaging system. We have a lot of legacy data that is coming from the main frame and we implement a queue and things like that. So there's a well-grained API, so well-grained data flow that's happening and then based on the type of the message if it is highly asynchronous, we pass it on to node. So there is a way of embedding node. We find this issue maybe two years back and then we are trying to see what is the best way of abstracting, best way of invoking the right abstraction within the node.js. So that's when we looked at which are the entry points that are making sense. Yeah, yeah. One other question. So I mean, I talked to Shelley Borough on the Electron team a lot about this kind of stuff that I don't understand, but would it be helpful for people to, like you said, there's no documentation, would it be helpful to, like, as someone who doesn't understand SQL's plus at all, would it be helpful to kind of go build out the structure of that and allow people to go fill it out? Or would it be, or would that be kind of our list of like, hey, we have this, but there's no content, someone will maybe eventually fill it out? Yeah, makes sense. Which way do you feel like would that be helpful, I guess? So my way of thinking is, if you document the existing state of the fact as it is, it can cause problems because the current state may not be optimal. Yeah. For example, tomorrow somebody comes and they want to embed more in a particular way, which is neither existing nor document. So then we are breaking the situation. So the ideal starting point is get a feedback on the actual embedding usage and then look at, holistically or from a design perspective, what are the different discrete way of embedding more and then freeze on that, then document. Okay. Okay, that's, yeah. I guess this is the last one. So streams. I would say this is not a pattern as such from the helper code, but it's there in helper code as well. Anybody who's working on code will also say this is a ever recurring pattern of a problem statement. People complain that the event, say, X event is occurring after Y event, whereas I was expecting Y to be happening first and vice versa. And this one keeps changing and keep occurring. The X and Y can be P and Q, but every time we see the life cycle events or the stream are completely coming in an arbitrary manner. And then transform stream, streams, I see quite many users complaining about, I want to transform the particular stream into a particular pattern, but I don't see the data coming out. I see the original data that's coming out, the transformation is not really happening or the particular data event is not triggering, et cetera. And multi-level piping is like A pipe, B pipe, C, probably the most common use case, whereas A and B piping into C or A piping into B and C, these are different scenarios of piping. So not necessarily all combinations produce the data in a desired manner. It's not necessarily because there's a severe problem in the notice, but because these are not necessarily defined as valid use cases. So as in many people with various issues, we look at that and see, oh, okay, there is a specific use case that is missing, A and B piping together into C is something which we do not think about. Let's implement that kind of thing. And there could be real bugs as well. I am not sure about that. But fundamental problem is that the stream API does not have a specification around that. Just like any API will have a well-defined input and a well-defined output. Documenter and the design follow the documentation or the documentation follow the design. Here, the fact is that how the stream works becomes the expectation or that becomes the documentation. But assuming or keeping in mind that streams need to work with a number of other processes, probably outside of Node.js as well, there could be child processes, there could be other endpoints coming from the network, which is feeding you with the data. Then you need to adhere to the protocol that is defined at the other endpoint or you need to align with that expectation. So, if those are not matching, then the result is basically this one, the half-assard life-cycle events. So, here my clear recommendation is that we should have a specification. By specification, I mean a set of defined principles, set of expectations about how the exposed API should work in any sort of implementation. The implementation can be customized, but the expectation should be standard. And that should work seamlessly across all endpoints of the child process interactions and things like that. Just so I understand you clearly in the example of the rights after end event, this is specifically like a problem in the user land where people are implementing streams improperly? No. No, this is basically with HTTP or any other APIs in the code, which internally make use of streams, yeah. But the whole point is, though you are making use of a core stream, the data control is within the application. The stream do not control the data as such. The velocity at which the data comes or the data type of the data and the endpoint from which the data coming, these are completely in the control of the application. Okay, so someone somewhere, maybe that created the API and you're consuming streams or something, they're breaking, they're the one that is particular, perhaps sending a right after the end event. You got what I'm hearing? Yeah. That's what I would consider it's a user land and should probably use that term properly. So they're not using, someone somewhere is not using streams in their events properly because there's not a well-defined stack for how to use them. Oh, okay, let me clarify once again. So we have a stream, which is said basically, you are making use of an HTTP capability and as an HTTP client, you know that the response coming from the server is actually a stream. Then if you implement the core back for the data event, for the end event or the finished event, et cetera. So these are implemented in the user land. The core back belongs to the user, whereas the Twitter of the event belongs to the code. So user, as a user, the expectation of these core backs are that they get executed in a particular order. Say for example, and the right happened first and then end, whereas that expectation is not met. So definitely the responsibility or the break is happening in the code. So that's pretty much I have. So just to reiterate what I said in the beginning, these are not necessarily the whole problems in the Node.js support report as important. They're probably the ones which I believe is following a pattern at the moment. And then we also looked at the root cause and what are the recommendations that can be made because some of them as discussed not necessarily will work as it is. We need a better approach, but some of the things which we know what can be done in a systematic manner. Somebody who is interested take ownership, champion it. Basically, ownership not necessarily mean implement the end-to-end solution for that, but just to kickstart the conversation in cases for define some milestones and see if you can get engaged with the people and delegate some part of the work, then have that as an initiative and as a competition. Do you have a link for your slides that you can share? Come again. Do you have a link for your slides? I don't have. I can share it with you. Thank you. Yeah. I feel like something that hasn't already been done is like the recommendation made is like an issue filed in the relevant repo alongside with like the problem in root cause and like volume that you've seen. It's such great user feedback if you haven't already done it. I haven't done it. I mean, I don't think you need to do it alone either, but I think it's just really good justifications for people considering how we're building things out, moving forward or where we can devote time, right? Like defining the node streams back. Yeah. I mean, from a tail would have very much agreed with that. But it's just about the time to find to do it or the people, right? Maybe tagging, you can use more. If it's easy enough for you to tag things that people can subscribe to the tags. Yeah. It's always good to have broken use cases to test the game. Yeah. This is great. We've got so much work to do. It's great work. Okay. Thank you so much. Thank you.


Good morning My name is Klaus and I'm CIO of SBA B. We are a Swedish Mortage Bank With a little bit more than 500 employees and a little bit less than 400,000 customers So we're not that large big when it comes to banking But with like 35 billion euros on our balance sheet. We are large on in the portfolio Which makes us number five in Sweden We started off in 85 1985 to be more precise And has been we have been online player all the time since customers in the beginning called us We had no physical offices no face-to-face meeting with the customers. It was all by telephone and then with internet coming we Customers started to meet us on our websites our mobile applications social media other channels and so forth So we are a digital player and as we'll probably know the banking sector is Digitizing at a high speed as well a terrific a terrifying speed right as every digital market go it goes exponentially up So as a digital player in a digital market We have found out that the most important thing for us to achieve the most important skill for us to grow is to be fast Fast in the meaning that we should Not code twice as fast or working over hours or something like that by fine methods and tools and technology To enable for us to produce as much good stuff as possible to our customers as rapidly as possible Taking new stuff into production Continuously improve existing services to excel in the customer meetings But also to be able to tackle that tsunami from regulators European and Swedish authorities that throw lots of you know rules and regulations on us without breaking our backs So working faster and have more fun in the in the same time. That's our what we try to achieve For us there are two main Ingredients in getting fast and that is architecture in one side and the way we work with it on the other And they are about equally important. I would say so let's take a look at those On the work side as every other digital company We try to learn and adopt the agile ways of working to achieve the speed that we need meaning That we strive to be able to put things in production quickly See how they work measure the behavior flip or flop Withdraw it if it flops Elaborate it further if it flips and so on and having the guts To actually put things in production and fail if we fail fast That makes it easy and nice to go in production often and offer customers stuff that they need at the high pace Very important another important way to learn is the concept of autonomous teams For us it means building full-competence teams from product experts service expert customer behavioral People UX to engineers that hacks it deploys it puts it in production and then takes care to take care of it over time So these competencies should fill every team in our tech stack Also important to make these teams independent of each other If the red team has to wait for the blue team or the green team, it won't be fast Waiting is the number one enemy of speed so independence and full competence is crucial for these teams to work optimally For me as a leader, it's also a question about leading by goals and avoid hippo wing I guess, you know the hippo concept highest paid person's opinion Namely me in many cases I should avoid going into the teams and tell them what to do and how to do it since they're better fit to figure that out themselves For me, it's about producing goals Get the teams buy into those goals and then support the teams as long as they are running towards the goals The most that I can day and night my role as a leader the teams excel they create they They sometimes bump into problems and then we as leaders need to be there to help them out That's also a crucial part and it takes a bit of ice in the stomach to learn how to do that not stepping in and say Hey, you should do like this Mostly 99% of the times I'm wrong. I've learned so I try to avoid that It's also a fourth very very important capability is to learn to chop up deliveries and deliver value Quickly and fast and early in the process if you have this initiative that you want to make Make sure that you don't wait until here with deliver the value But learn how to deliver it here here here and here and maybe when you come this far It's not so interesting anymore the customer have what they need and there is something other Something else that is more interesting for you to focus on right So there are many things in the agile toolbox, and it's really important to learn it to in order to get fast On the architecture side as every other company who has been around for 10 20 30 years We carry a backpack backpack full of technical crap monolithic systems components There are very very dangerous and hard to change right if two teams change the same huge Humongous component at the same time. It's just it's almost certain to fail when you put it in production So where we want to be is in a decoupled infrastructure a decoupled code base decoupled services So decoupling is the word of God Trying to achieve speed. It's also important to figure out where you want to be fast It's very hard to be fast all over the play field. So for us it means that the stuff in the basement Bank systems interest calculations stuff like that is handed over to partners that help us with it So we concentrate on the customer meeting The integration layers and the customer interfaces that we need to change often and quickly So we deploy microservices and front-end stuff on the open stack platform and do it in a rapid pace Make sure that we have teams That take care of their own components and grow independence between these teams So the green team is good at green stuff the blue team is good at blue stuff And they don't have to ask each other so much every time again weight and dependencies are enemies of speed So they should be able to work as much as possible by themselves Going to their own goals and the corporate goals, right? It's also very of course important to automate every possible step in this chain From commit to deploy we now have reached the level where we don't fiddle almost anything manually in the process It's automated testing automatic deployment different Environments automated security automated alarm setting etc etc with Docker Orchestrating with swarm on the open stack platform and lots of other components and stuff that I even don't know the name of Along the chain so automate whatever is automatable. Maybe coding is automatable, too in the future Probably will be some artificial intelligence talk in this session later on I guess so Having this said work Infrastructure important to get speed and speed is crucial to survive and to win in the end So I would like to share a few results If possible. Yeah, there we go By September last year. We were still into monthly deploys You know gathering up huge piles of code then find the suitable weekend take the systems down for maintenance Saying sorry to the customers. We're down for 10 hours Putting all this new stuff into production pray to God turn the light on again and bam Probably nothing works and then you have to do lots of rework a lot of our after-work and stuff like that So we decided to stop doing that and instead Learn the capability to deploy when ready and do it as often as possible without downtime So by last quarter last year, we were up to we made kind of benchmarked our own You know the capability we had and it was around 140 user stories for per month for this quarter. So we set the goal on double that this year 2018 Meaning that we should put like 200 and what is it? I'm not good at maths 200 something 80 in production by the end of this year The teams almost hit that goal already in March and after summer they kind of went berserk and Beat the shit out of that goal, which made me to stretch the goal a little bit to 400 By the end of this year 400 user stories in production any time without downtime and look what happened in October What should I do? The teams went haywire and actually over over did the the goal already. So they really love it I love it too. I have to admit and Since we are still like in 70% legacy, you can imagine what will happen when we go further and further on into this microservice Architecture and learn how to master the open stack platform and the tools and technologies around it It's a very nice trip to be on I can assure you and it's very good to celebrate these kinds of results. I Will be more than happy to share more of this on the breakout this afternoon Before I quit now, I would ask or actually Jimmy my employer brander has asked me to To take a picture of all of us so if you can please say hi to Jimmy and big give us big smile Do you like this? Cheers awesome. Thank you so much


It's so cute! Hello! It's so cute! Assalamualaikum! Hello, I'm Dawood Kim. So this is the second North Pakistan film. Today I'm gonna show you Gilgit Pakistan and Runza.  Then, let's go! Oh, finally! Finally, I found my slipper! I thought someone stole it, really! Did I ever told you? Okay, sorry, sorry. Okay! Nice hotel. Did you? Gilgit city. The capital of Gilgit-Baltistan. We're with the beautiful mountain. You're so lucky. With the beautiful mountain, beautiful river. Yes, different landscapes. One of the most beautiful city in the world. Oh, yes, yes, you can say. Pakistan is in the world! Gilgit Pakistan! This is my friend. Hello, how are you? The honor of this hotel. His specialty are traditional bread, food. Which name is Shapshoro? Shapshoro. This is very rare. And we will meet after few minutes. Oh, I wanna try. Okay, sure, sure. Shapshoro, meat is coming. Yes, yes. How big is it? Yes, yes, okay. More, more, more. It's like a pizza. Local pizza. This is it. Okay, congratulations on your new job. He's from Pakistan. Let's go, let's go. Masha'Allah, Masha'Allah. I'm surfing now. Peace be upon you. Peace be upon you too. This is Shapshoro. Yes, this is Shapshoro. Try, try, try. Yes, please. It's a lot. A lot. Binding by doubt? Yes. Oh, very good. It's very hot. Junaid Bhai, how was the taste? Beautiful, marvelous. No, the taste is not beautiful. But the taste is very crispy. Who is the chef of the Shapshoro? Definitely. Talking, talking. Masha'Allah. Come, let's go. Jalo, jalo. So, what's up for here, what's up for? Yeah. Masha'Allah. Beautiful style. With beautiful chai. It's mixed. It's mixed. It's cherry, right? Male, lale. Chalo, chalo. Lale, lale. Lale. This is almost ours. In the name of Allah, the Most Gracious, the Most Merciful. So sweet. Puhut Allah. So mazeda. So male, lale. Lale, lale. This is mal. Mal. Product. Okay? And the color of this product is lale. Okay? Ma. Lale, lale. Mal, lale, lale. Mal, lale, lale. Mal, lale, lale. Look. Wow, it's broken. Yes. The pressure of the water. Oh my God, it's dangerous. I was not in there when it's broken. Alhamdulillah. Alhamdulillah. It's so beautiful. So clean. So clean. So fresh. Mashallah, mashallah. What's your name? Ahmad. Ahmad? Yes. Can you speak Korean? Ahmad Imnida. How are you? I'm Joshim Haseo. Oh. How are you? Lale. Lale. Lale. Lale. Lale. Lale. Lale. This is the Cape of Hunza. Cape of Hunza? Yes. Amazing. Subhanallah. Subhanallah. So we came to Liwawad restaurant. As you see, the view is amazing. Halwa. Halwa? Yes. Halwa Puri. The best nashta in Hunza. Best food with the best view. Mashallah. Let's go to eat. In breakfast. Lale. Lale. Lale. Lale. We got cherry juice for breakfast. Very delicious. Was it good? No. This is aloo ki bhujia. Aloo ki bhujia. Yes. It's very good. Achar. Achar. Kimchi. Spicy. Oh my God. Achar. Achar. Achar with albapuri is very good. Very delicious. Match perfect. It's very spicy. Tuk tuk. Tuk tuk. That's cute. Tuk tuk. Let's go. Let's go. How much for Gilgit? 100 rupees. Rupees? Yes. And you will consume the petrol of 1000. 1000? How you collect 100 rupees? Okay. Cancer. 5000 rupees. 5000 rupees. Give me my money. We will go to the belly. We will go belly. Oh here it's better than before. Okay so where we going now? We are going to... Belly. Gapa valley. Yes. Gapa valley. Gapa valley. Let's go Gapa valley. Beautiful. Beautiful nature. Extremely beautiful. Is this Oaka Buddha? No. Gapa valley. Gapa valley. Gapa valley. Gapa valley. Yes. That's Oaka Buddha. Wow. Amazing John. Amazing John. John, that a bar is so excited. Oh my god. Oh my god. So the waterfall it starts on the top of the mountain. And it first down. Down, down, down, down, down, down. Down, down, down, down. Hello. Hello. Is it delicious? They are so cute. Beautiful colors. It's beautiful, beautiful. Bye bye. What is this? Tree. Wood. For fire. You are so strong. Kitchen? Kitchen. Yes, yes. It's very warm. There are everything here. Like there is a pot and kitchen, the fire and electricity and nature and the house. Everything is here. So nice. Laka Bhushi. So beautiful place. Pretty nature. This is old Kapabeli. Yes. This is a good nice house. Good house. This is roti, roti, roti. This is our roti bar. Wow. Roti bone. Roti, roti. Yes. How is it? Delicious. Mind blowing. It's amazing.  It's delicious.   It's just gone. It's gone. Where is my roti? It's gone. It was so nice to come here and eat roti and everything. They are so kind. Amazing. This is Pakistan hospitality. Thank you so much. Thank you so much. Thank you so much. Good luck. Good luck. Good luck. Good luck. Thank you so much. Good luck. They are so kind. This is cattle room. Oh my god. Oh my god. Go, go, go, go. Go, go, go, go. Where are you, friend? I'm not afraid. Hello. Hello. Oh my god. Take me. I'm a dangerous guy. How are you? Good guy. Good car. OK. Mashallah. Mashallah. Come here. Yes, yes, yes. Yes, yes, yes, yes. Can you take this? Can you take this? Yes, yes. What are you doing? What are you doing? Oh, look at the rain. OK, OK, OK. Yes. Oh, fresh milk. Fresh milk. Fresh milk, fresh milk. OK. It's up in the corner. Let me and I will show you where I'm going. Very good, very good. Oh, bye bye. I love you. Love you. Masha'Allah. Thank you. I love you guys. Annyeong. Run, run, run, run, run, run. Run, run, run, run, run. Very nice, very nice. Let's go. This is Pakistan. Pakistan's in the bad. This is Pakistan. This is Pakistan. This is Pakistan. Pakistan's in the bad. Let's go. Jalo Jalo. OK, let's go. I think the really good thing in Pakistan is you can listen to Ajaan in everywhere. I will go to Skard. I'm hurting because I've been falling. I need your help. My heart is breaking so tight.


Maybe that's why men and women just don't work out, black men and women. Explain. Because you just said, I mean, because we feel irrelevant. That's because you're trying to compete with us. We're not trying to compete with y'all. Listen, it's the message right here. Black boy tell me how you really feel, because I just want to build with you. Black girl tell me how you really feel. I want to keep it real with you. I want to live better, eat better. I want to love better, sleep better. Yeah, I want to feel so aligned. Well, like I said, women need to work on things too. We do need to work on not listening to respond, but listening just to understand. And that's what I'm trying to work on myself. But sometimes I feel like a lot of the frustration and a lot of you guys not feeling like you can talk because it's just, y'all don't think like we do. You can never understand a women's perspective of anything. You just sat here and said, oh, men have done this, men have done that. Like women haven't done anything. And that's the problem. That's why we talk over y'all because we are always overlooked. Always men had to go to farms and men had to go to work and okay, women had to bear children and be close to their death, birth and the child.  Men don't even want to work these days and we don't even talk about that. It's more women I feel like succeeding right now than it is men. I just feel like that because we've been sent back for so long. And that's why we talk over y'all. So there's so many things you said there. The first thing I want to say is I agree that men could do a better job acknowledging women's contributions. I think we often trivialize what women bring to our lives, what women have brought to the world and I think we could do a better job there. I do also think as a consequence of a lot of different things, especially just nature, men understand women better than women understand men. And that's because in order for a man to get with a woman, whether he's looking for sex, relationship, whatever the case may be, he needs to have at least a working understanding of her psychology.   And that's why I've seen shows or things where they do a social experiment with women's spitting game. It's terrible. You've never had to. So it's like a muscle that's never been worked. You don't understand men's psychology. All you understand is he's going to want to sleep with me, so I'm going to exploit that. But you've never had to develop going to my basketball analogy sometime because you can dunk. You've never had to develop a crossover. You've never had to develop a jump shot. You never had to learn to playbook. You don't come to practice. And that's how a lot of women are. So because of that, it's easy to trivialize some of the ways men are because you don't actually think about it. You don't think about, why is it that, what is that the foundation of boys, for instance, feeling like they can't express themselves. They can't cry, whatever the case may be. So I think women, especially nowadays, you have to go back to the drawing board. Because the kind of dudes y'all say you want until your last point, a lot of women want that dude. So how are you going to stand up? A lot of women want, what kind of dude? The dude who is a good leader and he's successful and he's intelligent and all that good stuff that women want. But none of y'all, at the same time, this is the part that blows my mind. None of y'all, number one, you don't want to compete for him. And number two, even when you get that dude, you pretend he's not. Because I'm getting complaints, not just from, like I get complaints from the unemployed dudes who are like, you know what I'm saying, she don't submit to me and things like that. That's the problem. I understand that and I'm with you on that. But I'm getting complaints from 1% dudes as well. I'm getting complaints from niggas who make six figures who lead multi-million dollar companies who are doing all the right things. Because they want someone on their level. No, no, no. I'm getting complaints that the woman still won't submit to me. So it's like the woman isn't submitting to the broke dude because he's broke. She's not submitting to the rich dude because of another reason. She's not submitting to the emotional available dude for another reason. So it's like y'all don't want to submit under any circumstance. That's not true. Okay. That's not true. Because, okay, there may be some women who just don't want to submit regardless because they want to do their own thing. They want to make their own money.  That is not me.  Like for, it could be different for everybody. Like submission for me would be, you know, maybe going to see somebody late at night and having to be tired for working the morning or getting up and making breakfast for somebody, you know, before they go to work. I mean, submission could be a lot of things for different people. But I feel like if he's doing the right things and he's there for you emotionally, then yes, maybe you should submit a little bit. But at the end of the day, that goes back to what I said before about women have been the underdog for so long. Like I feel like this is us just wanting to be heard finally. Like we don't have time to submit right now. We are trying to make more money than y'all. We're trying to make sure we're straight.  Like you have to have that backup plan. Like what if you're not there? Like I think that gets in the way of submission too. Like a lot of what ifs and like what if I have to do this by myself or, you know, I need to know how to handle myself by myself without him, without needing him. So let me ask you this.  What do you mean? How is it working out for me?   You want to deal with.  So you you want to be like that's not top tier for me. If that's what you're asking. Like I'm not I'm not going out on the world trying to figure out how I can submit to a man. I think that's what I don't realize too. Like we have our own things we have going on just like you guys do. It's not just about submitting all day. I think I think that's a beautiful point because that that's a theory that I've had. I think as much as y'all complain, ain't no good men. I don't think y'all at you want one. I don't think we're actually looking for one. That's my point. I don't think y'all at you want one. It's not that we don't want one. We desire to have someone to come home to and to talk to and to be there for us and to protect us. But what you want? None of the responsibility. No, we want that. It's just that we don't have time for it because of the world and what we're going through right now and us being so far. So if if I said I want to make six figures, I want to have a nice office, but I don't want to work. Do I really want a corporate job? That's not the same thing. It is the same thing because you guys want the benefits of a good deal. No. OK, explain to me. I feel like that's like saying, OK, I want to make six figures. I want to do this, but I'm not going to have friends. I'm not going to go out on the weekend. I'm not. I'm just going to strictly stick to working. But that's my point. That's my point. Like things come with trade-offs.  If you want this, you have to give up that because you have to pick what do you want more? Do you want to make six figures or do you want to go out on the weekends? But people who go out on the weekends all the time typically don't make a lot of money and people make a lot of money typically don't have time to do bullshit. But they want that more than they want this. And that's what I'm saying.  So one look, I say that because one little thing with men, women nowadays is I'm out. I don't have time to figure out if you're going to fix the situation or if you're going to get your life together right now or not. Like I feel like if you approach me, you should know what you bring to the table. Like I feel like that needs to be eventually like a conversation like what can we do for each other? If we can't, then maybe we should just not be dating or you know. And then I think dating is confusing for y'all. It's very confusing for y'all because just because I date you don't mean that I'm expecting to, that I expect you to like protect me or like be there for me or anything like that. Like I'm dating to figure out if you have those qualities. It doesn't mean we're going to be together and I'm going to submit to you like the next day. I'm not going to cook you breakfast the next day.  Like it doesn't come overnight. Like you have to figure each other out and even figure out if you want to submit or are you ready and stuff like that you know it just happened overnight. So you don't go into dating with any expectations? Yes I do but I don't go into it looking to submit to that man. No, no, no not because it's supposed to be fun. It's supposed to be fun first of all. Like it shouldn't be like I'm, I am going into it looking for something but I don't want anybody to feel like you know we have to get married after this first date or anything like that. I'm not talking about that because you mentioned you don't expect him to protect you. You don't expect him to do this. Not on the first date? Nope. I don't. So a man that you're out with that you're spending time with you feel like he has no obligation to you in any kind of way? I feel like men don't protect women anyways. It's not true. So that's why I feel like that. It's not true. Y'all are the main ones that downgrade us. Explain. Black men are the main people that put black women down. I know you hear it all the time. Black people the main ones talking about black people. All the time.  You don't hear that. I mean you don't see it on social media. You don't. Yeah that's cause black white dudes don't deal with y'all on that level. They do. Trust me they do. On that level no. They do. Explain. I'm a woman that has dealt with plenty of white men. So they don't. So what do you think I'm saying? When I say white men don't deal with you on that level. I don't know. What do you mean when you say that?  But as far as walking you down the aisle statistically that's not happening.  Statistically in large numbers. So that's what I'm telling you. I can't talk about every individual so I have to look at big data.     How do you know that? I have a lot of data that I look at. And some of the data also shows me that the same things that black men complain about are women white men complain about it too. They don't necessarily say it. In the United States that's what statistics that. So when men and the thing is black men are actually looking out for y'all. Because again. I don't think so. Okay explain. I don't think so. Cause just listen to this conversation with you like black men do not want y'all. I mean just think how we have to that would, that's called something. Like when somebody says something long enough to make you think that black men don't want us. No I didn't say that. So of course we feel like we don't want y'all either. But I didn't say that.  White men are not marrying black women.  Because of you guys' behavior. What kind of behavior? Number one you're disagreeable. So we're supposed to agree to everything. That's not what I'm saying. Then what are you saying? Disagreeable means that you say no immediately. You're combative. You're belligerent. The bad attitude. They're talking over people. The waiting just for your turn to respond as opposed to listening. These are things that are consistent. And again I've been privileged to talk to a lot of black women. And these things are consistent. So when we see the numbers playing out this way it's not a surprise. Because to your point, and I don't think you realize what you said. Black women are spending more energy trying to be men. Because what you said is you're trying to compete with us. No. I didn't say we're trying to compete. You didn't say those words. I said we're trying to get on the same level. That is competition. That's not competition. Explain the difference. I shouldn't have to work the same job as my male friend and get paid less. That's where I'm coming from. Like I feel like we should get paid just as much as y'all. We should be treated with the same respect as you guys receive. Under the certain circumstances, women are paid the same. No. That's what the numbers are saying. You know the difference? Not the tests that say. The difference is number one, and I actually like researched this stuff. Number one, women tend to not negotiate.   He's not gonna take the first offer on the table but women tend to take the first offer. So that's one of the discrepancies. Number two, women and men tend to not take the same type of jobs. Women are working in health care.  Those jobs make less than STEM. Men typically work in STEM. So again, like we have to look at the numbers and make sense of them. But this idea that women are just getting paid less off top. Perfect example. Motherfuckers think WNBA players should make as much as LeBron James because they both play basketball.  Name one WNBA player. Just one. Why? That's why they don't get paid as much as LeBron James. Because they're not put on the same level as the NBA. They are. They play on the same courts. Sometimes. They don't, no, sometimes. No. Yeah, sometimes. No. But again, but this is a court. You can't even name a WNBA player. I can't name an NBA player now. Yes, you can. No, I can't. Michael Jordan. Copyright. I don't know who that is. Yes, there you can. No, I can't. This is cap. But that's not the point. So you're saying because I know LeBron James over Candace Parker or somebody, but that makes it where they shouldn't get paid equally. Absolutely. Because they decide to put us on a lower level than men. Who put them on a lower level? Whoever made the NBA. That's not how it works. LeBron James gets paid. What he gets paid? Why should men get paid more than women in the NBA? Because people go to NBA games. People don't go to WNBA games. Why don't they go to WNBA games? Because they're boring. Why is it boring? Because it's women? Because they can't dunk. They're not athletic. They're not as fast. They're not as strong. It's not a fun watch. And the ironic thing about it, the women who are the most critical about it, they don't even watch WNBA games. So you're saying NBA gets paid by the seats and stuff like that? Okay.   The IG model who has more followers makes more money. It's not about her being a woman versus me. If you have more followers, you can command more money. So even women saying they should get paid as much, you can't name a WNBA player. You can't give me a stat line. You don't even know when their finals are. So how should they make you do? No, I don't. Exactly. So why? Because the thing people don't realize is the only reason the WNBA is still afloat is because the NBA keeps loaning them money. If the NBA wasn't helping them out, there would be no WNBA. Okay. You're right. And the worst part about it, even you said they don't give them the same platform. There have been times where NBA players... They don't give them the same platform. There have been times where NBA players shouted out WNBA players. Like, yo, number nine is nice. Number nine gets mad talking about, I have a name. You got 10,000 followers. You better be glad Andre Goudala said your number.  Yes. No, he should say her name. She's irrelevant. Maybe that's why men and women just don't work out. Black men and women. Explain. Because you just said... I mean, because we feel irrelevant. That's because you're trying to compete with us. We're not trying to compete with y'all. You aren't. I'm not. I can say that much. Okay, what are you trying to do? I told you. I don't... If I have a man, I don't want to be like an independent woman. I want to be... I don't want to say dependent. Oh, God. I want to be submissive, I guess.


Selecting the right e-commerce platform to run your dropshipping business on can be a very difficult decision to make. That is because there are so many different platforms that you can dropship on with so many benefits, pros and cons. That's why in this video I'm going to make this easier for you guys to understand what are the best dropshipping platforms that we can use today with their benefits and advantages for us dropshippers. Quick intro and let's go! Hello everyone! Glad to have you joining us here today to learn in this video about the best e-commerce platforms to use for your dropshipping business. For those of you who don't know if you're new here that's completely fine. A dropshipping platform is where you're actually creating your dropshipping website. So you want to sell products and you're getting them from dropshipping suppliers, but you need to sell them somewhere. So that somewhere is your dropshipping platform. One second before we get to the best platforms that you can use. If you have not done so yet, subscribe to our YouTube channel to always stay updated on all of the latest and all of the hottest topics that we have coming out in the world of dropshipping. That being said, let's go ahead and start with the list of the best e-commerce dropshipping platforms for your business. Starting with the first one on the list. This is one of my personal favorites and that is eBay. eBay supports a dropshipping business model and thousands and thousands of dropshippers have been using eBay as their number one dropshipping selling platform. Now, most beginner dropshippers like to start on eBay because they are very user friendly. It's very easy to start. All you need to do is head over to eBay, click on register, register for your free account and start listing your items. Now, today on eBay, if you are signing up for their manage payment option solution, then you're going to get 250 free listings to start listing from day one. If it's a new seller account, you may have boundaries of seller limits about five to ten items to list and up to $500 of listing and selling together. But you will be able to open those limits and increase them as time goes on and you start selling and shipping out your products. Besides that, it's very easy to get started on eBay. As I mentioned, you just need to register your account, start listing items and you're getting free organic traffic, which means as long as you've got a good product title and it's something that people are looking for, then your shoppers, you're going to get a warm audience to see your listing, enter it and purchase your listing when they search for it on eBay's search engine. So it's actually very, very simple. And while there are promotion tools on eBay, you do not necessarily have to use them and you don't have to pay any traffic sources in order to bring traffic to your eBay store and get people to start buying and for you to start profiting. So it doesn't cost money to start selling on eBay. Only when you want to start listing more than 250 items in your store, you'll have to go for an eBay Store subscription, which starts at a very, very low price. And the more you go on, the more listings you want to have, the bigger your store subscription needs to be. But the best part about dropshipping from eBay is that you do not need any initial investment to start. When you start getting your first sales on eBay, eBay may put your payments on hold until they get to know you the seller better until they start seeing that you ship out your items. So you may have to pay out for your products for about the first month maybe. So depending on how many orders you have, you may have to put in 50, 100, maybe $200 to pay for your orders until you start getting those payouts from eBay and then you'll start using that cash flow to pay for your new orders and keep withdrawing the profit to your bank account. So dropshipping on eBay, one of my personal favorites. That's why I went on for a couple of minutes talking about them. Their seller account started at a very low price of about $8 a month or $5 if you're doing it annually. And like I said, from then on you can get so many listings and with so many listings with the right amount of product research you'll definitely make more sales and more profit as time goes on. So that pretty much sums up eBay pretty quickly and if you guys want to learn how to dropship on eBay just check out our blog page. We have a full article on how to dropship on eBay step by step beginners guide. It will definitely help you guys out. And by the way guys, if you do not have the time or you don't know how to enter our blog page and search for these articles everything that I'm going over in this video, I'll leave a link to a blog article below. So you can go over it one more time again and also get all of the links to all of these extra blog articles that I'm talking about that will help you guys more in your dropshipping journey. So eBay is number one on the list coming up number two and this is another one of my personal favorites. It's Facebook Marketplace. Now this has been trending like crazy in the last year. And because we noticed this trend we also support Facebook Marketplace dropshipping on AutoDS. So if you're using AutoDS you can automate your price and your stock and importing your products pretty easily using our Facebook Marketplace dropshipping helper and AutoDS. So if you're a US citizen and you've got a social security number and you can pass SSN verification with Facebook you can definitely start dropshipping on Facebook. As long as you have a US IP address just log into the Marketplace. You already have a Facebook account go to your Marketplace start creating your listings. And if you want you can also connect to AutoDS to really automate your business and help you scale really easily. But if you want to try it out without automation first that's also perfectly fine. See that it works well and then understand how high you can scale when you will start using automation tools. But that's not the point. The Facebook Marketplace has started trending really really high in the last year and the numbers that we're seeing the sales that we're seeing is increasing as time goes on. Now one of the best things about the Facebook Marketplace is that there is little to no competition there. So in order to sell products in order to be able to make those sales all you got to do is head over to dropshipping suppliers websites list their best selling items on your Facebook Marketplace account and you will notice that many of those items will actually start to sell. The only thing that you need is to enable shipping options when you are creating your listing. What shipping options enables is all 50 states in the United States to be able to see your Facebook Marketplace listing and then anyone will be able to buy it. Facebook will give you your payouts within a couple of days to a couple of weeks depending if you provided tracking information that Facebook can read.  So once again the biggest benefits of the Facebook Marketplace is that there is low to no competition. You're getting free organic traffic. So just like eBay you don't have to pay any traffic sources to bring traffic to your store and have that traffic purchase the products if they're even interested in it. There are low selling fees on Facebook Marketplace. This is another great advantage that I like. You're either going to pay 5% of the transaction fee or 40 cents, whichever one is higher. That is the only fee that you're going to pay when selling on the Facebook Marketplace. So if you guys know about other dropshipping platforms you can easily make a comparison and understand how cheap it is to sell on the Facebook Marketplace. And you don't have any selling limits on the Facebook Marketplace. So you can pretty much list as many items as you want from day one which is much better than what eBay has to offer. So the Facebook Marketplace is definitely something that you guys need to check out. Once again if you meet those minimum requirements of being a US citizen and living in the United States. If you guys want to learn how to dropship on the Facebook Marketplace we've got a full tutorial once again. So use the link once again below the video and inside this article as you see over here below the Facebook Marketplace explanation. You'll have a link to the blog article of how to dropship on Facebook Marketplace. Definitely check that out if you're interested in doing so. And we've also got a live Facebook Marketplace case study on our YouTube channel where I showed you guys everything that I'm doing on my Facebook Marketplace dropshipping account from day one where I'm getting my products from, how I'm sourcing them, how I'm listing them, which ones of those items sold, how much I'm profiting, how I handle customer service and so many more things. So check that out if you need some social proof on how Facebook Marketplace dropshipping works. The third dropshipping platform that I want to talk about is Shopify. Now Shopify has been around for a while. They've been here since 2004. They allow you to create a fully customizable website with your own domain name and everything once again fully customizable www.yourstore.com and all of your customers that you're going to gain on Shopify are going to be your customers that you can later use for email marketing and so many other things when compared to other marketplaces like Facebook, eBay, Amazon and so forth where they do not give you all of the customers details. They actually keep it for themselves. I'm talking mainly about their email addresses and this is one of the things that I love about Shopify. When a customer gives you their email address, whether to subscribe to your newsletter or because they would like to purchase an item from your store. Once you get that email address, this data is worth so much money when you have a few hundred and then a few thousand of them because once again, you're going to use their emails to promote using email marketing and there are so many other marketing methods that are also available on Shopify, but let's take it back a little bit. Shopify is a fully customizable website. You can list as many listings as you want from day one on Shopify because no one is telling you what to do there. You can do pretty much anything you want as long as you're following, you know, laws and regulations and things that are normal when running an e-commerce online business. And one of the things also that I love about Shopify is that no technical skills are required. You are creating your own website from A to Z but you really don't need any technical skills in order to do so and you can still get a highly converting, very good looking and professional website. For those of you who want to get a full detailed explanation of how to start dropshipping on Shopify, everything that you need to do from day one, how to find products, targeting your audiences, marketing your products, creating your Shopify store, all of your policies and everything that goes in between. We have a full A to Z Shopify course. Once again, 100% free. All you have to do is start watching. There's about 40 lessons there and once again, you'll have the link to it using the blog article that I talked about in the link below this video as you see right here. Free Shopify dropshipping course from AutoDS and this will really help you guys get started from the ground up even if you have zero skills before you start watching this course. After watching it, you'll have a full understanding of how to run, create, and manage a profitable and successful Shopify dropshipping store. Now let's talk about some of the disadvantages of Shopify. The first one is that it actually requires a budget to start. So when compared to eBay and the Facebook marketplace that we talked about where you don't need an initial investment, here you do need to have one and it can even start from $500 to $1,000 because on Shopify, you don't have any free organic traffic. This means that once your store goes live and your products are in your store and you created a professional homepage and everything looks really good and you branded your store and did everything the right way, still nobody knows that your store exists and this is where you're going to have to start bringing traffic and paying external traffic sources to bring traffic to your website. This is one of the reasons why email marketing is so important because once you get enough customers enough customers who gave you their email addresses and you have a long list of email addresses of customers who have shown an interest in your store, brand or products, then what you can do is start sending out email marketing promotions. This doesn't cost you any money because if you're the one writing the email and you're sending them the promotion, you're not paying anyone else to do it, you have your own data of customers that you want to target. But in other cases, if you don't have an email marketing list yet and you don't, if you're getting started, you're going to have to use other traffic sources to bring traffic. One of the most popular ways is Facebook ads. Once again, the Shopify course will teach you everything about Facebook ads from day one, how to start a Facebook ad campaign, how to target the right audiences, how to create videos for your drop shipping ads and so much more. But this is one of the things that you'll have to do in the beginning on Shopify in order to bring traffic to your website. Another way is influencer marketing platform so you can also use influencers and hire them to create a post or a shout out about your Shopify store, your brand or the items that you're selling. That's another great way to bring traffic to your website so you can also use Google ads and many other methods, but those are some of the best marketing methods that you can use for Shopify. But that is one of the things you're going to have to have a starting budget. On the other hand, Shopify is scalable much, much more than eBay from the start because you don't have any selling limits. The only thing that you need to worry about is getting traffic to your store, showing your products in your store to the right target audiences which is definitely possible with the right amount of budget, practice and targeting which you will learn from the Shopify course. But that's the thing about Shopify. You need that starting budget and you need time to learn the system. So Shopify is number three on the list. Now let's move on to number four. Number four is Amazon. Now a lot of people are selling on Amazon and if you guys think that Amazon is a seller, you're wrong. It's a huge market place with thousands and thousands of sellers. Now these sellers are manufacturing their products many from using sources like Alibaba to find wholesale manufacturing suppliers who manufacture the products for them, ship them to Amazon's FBA warehouses and then the seller sells it to you either using their third party logistics or using Amazon's FBA service which is much more practical for the seller and for the buyer. So on Amazon, you can actually be an Amazon seller and you don't have to buy any inventory from any supplier in Alibaba. You can actually drop ship on Amazon. So you can be an Amazon seller, sell products on Amazon without having to hold any inventory which most sellers do on Amazon. Of course, Amazon completely supports drop shipping and one of the biggest surprises that I have for you guys here is that soon this year in 2022 AutoDS is going to roll out Amazon also as a drop shipping platform. So while I'm recording this video today we support eBay, Shopify and the Facebook marketplace and Wix is going to be added very soon and right after that Amazon. So I have a good feeling that it's going to be this year. Hopefully it will be and you guys will be able to scale your businesses so much using Amazon. So with Amazon you're getting organic traffic pretty much like eBay. So when someone searches for something on Amazon they're here to buy so it's a warm audience and they'll get to your listing if you're using the same keywords that they are searching for. So you've got a large amount of existing buyers warm audiences on Amazon. You don't need any marketing budget. You can run Amazon PPC which is pay-per-click campaigns to bring more traffic to your websites but you don't need that for sales. If you're catching a good trending product without too much competition and your price is good you're going to sell and you're going to sell a lot. There are also no listing limits on Amazon. There may be category restrictions only in the beginning but after that Amazon opens you up to pretty much any category that you want and they're only doing that for their own protection. You can also target multiple categories when you're listing one item on Amazon and it's very easy to set up your account and start listing items. So stay tuned on AutoDS see when we'll start to support Amazon and I'm sure that you're going to love automating your dropshipping business using one of the world's biggest marketplaces. Number five on the list of dropshipping platforms is Wix. Now I just mentioned that Wix is going to be supported very very soon on AutoDS so maybe by the time you're watching this video actually I'm pretty sure by the time you're watching this video it's already going to be supported but Wix is another great platform to start running and managing your online business.  You can list as many products as you want from day one so easy to scale and no technical skills are required. So keep your eyes open for one of Shopify's biggest competitors because Wix is here and they're here to stay. Number six on our list of the best dropshipping platforms is WooCommerce. Now WooCommerce is a plugin for WordPress.  WooCommerce is a plugin to WordPress that allows you to easily create an online store. Now one of the things that I love about WooCommerce the most is that it's completely free to use. It integrates really easily with WordPress. It's very customizable and overall they're very user friendly very easy to use, easy to get started very straightforward platform. So definitely check out WooCommerce and stay tuned when we'll start using it when we'll start automating it using AutoDS which will make it much, much easier for you guys to automate your businesses and scale to new heights. Number seven on our list of the best dropshipping platforms is a platform called Equid. Equid is another WordPress plugin that will help you create an online store and it's free to use, user friendly interface mobile friendly support even though the other ones that I talked about also had mobile friendly support but this one makes it much easier and it also helps you enhance your current website so you don't have to create a store from scratch you can have an existing store and simply enhance it using this plugin. And we're also thinking about adding Equid to AutoDS as another supported platform where you guys can automate your dropshipping businesses with price and stock monitoring easy product importing automatic orders and so much more. So if you guys are interested in that let me know in the comments below and I'll have the developers check it out. Number eight on our list is BigCommerce. BigCommerce is another competitor to the WordPress plugins that I just talked about offering a fully customizable website built-in SEO optimization to help you guys rank better on Google without having to do any tedious work and a nice intuitive dashboard with all of the necessary integration settings. So once again, you're going to have an easy time creating your dropshipping website using the integration between BigCommerce and WordPress. Number nine on the list is Walmart. Yes, you can dropship on one of the world's biggest retailers just like Amazon. Using Walmart's platform. Now for this, you will have to be a US citizen. You're going to have to have a US bank account and pass verification pretty much like the Facebook marketplace. But if you have those and you sign up for Walmart for being a seller on Walmart, you're going to have a pretty nice ride selling things that you don't have in your inventory because Walmart has once again a lot of warm audiences that are here to buy. They enter Walmart because they want to buy something just like when they enter Amazon or when they enter your store on eBay. When someone searches for something on Google and they get to your store using Google, then there is not a high chance that this person came to buy something. He probably was just looking for some source of information. So this is a difference between getting free organic traffic from a warm audience to free organic traffic from a cold audience that probably won't buy. So Walmart is going to help you get those free organic sales and it's a brand that people simply trust just like Amazon. They're going to help you get lots of high traffic to your store and you can also target multiple categories with every listing. And with over 260 million active users, you can kind of get a good idea of how many sales, how many traffic you can get when dropshipping on Walmart. And of course Walmart supports the dropshipping business model. So you won't have any problem getting your account up and running and starting to sell trending items that people will buy from you. Number 10 on the list is Etsy. Etsy is a relatively new selling platform newer than all of the other platforms that I just talked about, but they gain popularity really, really quickly with artists selling their art pieces and all kinds of vintage items and craft items. This is what helped Etsy grow in the first place. And today you've also got dropshippers creating their dropshipping stores and selling pretty much anything in any category using Etsy's platform which is getting lots of popularity recently and lots of free organic traffic. So if you guys haven't heard or have heard about Etsy but haven't checked them out yet, I definitely recommend to check them out because you can definitely dropship on their platform. I've seen enough people do it and I've seen the results and it's really something that you guys should also consider checking out. Number 11 on our list and this is the last dropshipping platform that I'm going to talk about in this video is Magento by Adobe. For those of you who don't know, Adobe is a huge, huge company with Photoshop and Illustrator and all of those programs. They also have an e-commerce selling platform called Magento. They of course made this open source e-commerce platform to help you guys create your online stores and start selling with a fully customizable website, SEO friendly enhancements to help you guys boost your listings on Google and mobile device optimization which once again will help you you make your store mobile friendly. Now, if this is your first e-commerce dropshipping platform Magento may be a little bit on the advanced or difficult or challenging side to learn how to use it. The other platforms that I mentioned in this video are much more user friendly when you're starting off but if you already have skills or you've got good technical skills and you want to try it out you'll be able to do much more using Magento than you will using the other platforms that I talked about in this video. So it all depends on your skills and expertise. If you think that you can handle it definitely check out Magento. It is one of the rising e-commerce platforms to run a dropshipping business on. So that wraps up the 11 dropshipping platforms that you guys can start register your account today and already start selling and I've seen many great results from every one of these dropshipping platforms. So good luck choosing the best platform that's right for your business and don't forget guys if you tried on one platform and it didn't go so well you have so many other platforms and also many many dropshipping suppliers that you can dropship to and from. So if one doesn't go well nevermind rub it off your shoulder and move on to the next dropshipping platform. This way you will find the one that's right for you and you will find your success. Once again subscribe to our YouTube channel if you have not done so yet because this is the tab of content we deliver and so much more. Thank you for watching like this video and share it with your friends and family if you also want them to learn about the wild and amazing world of dropshipping. Thank you for watching and I'll see you guys in the future videos.


The study evaluated missed opportunities for vaccination, MOV, in Xijiang province using WHO global methodology, finding that 12.6% of children were still under vaccinated and 54.2% had a MOV, with factors such as age, previous vaccination behavior, caregiver relationship to children, and education level impacting the incidence of MOV. The study suggests that interventions targeting health workers in health service settings could be a potential quick win for improving coverage and equity. This article was authored by Yaping Chen, Huaku and LV, Huliang, and others.


So this is a quick demonstration of the dissection of the lateral and the anterior compartment of the leg with its muscles and the neurovascular structures. So let's start off from here. This is the common fibular nerve in the lower part of the papilloteal fursum and we can see that it is running under cover of the bicep femoris and as it runs down initially it runs behind the head of the fibula and then it winds around the neck of the fibula. Now here there's a very important clinical correlation. Any fracture of the neck of the fibula can injure the common fibular nerve and can lead to a condition known as foot drop. Let's continue. The common fibular nerve then goes under the attachment, the origin of this muscle here. This is the fibularis longus or as old textbooks say the peroneus longus and under the origin of the fibularis longus it divides into a deep and a superficial branch. Now let's trace the superficial branch. The superficial branch of the fibularis longus is the one which runs in the lateral compartment of the leg. So this is the lateral compartment of the leg. This is the fibula. This is the posterior margin of the fibula. The lateral compartment of the leg is between the posterior intermuscular septum and the anterior intermuscular septum which is attached to the anterior border of the fibula. So this is the lateral compartment. So coming back to the superficial division of the common fibular it runs in the lateral compartment and we can see it is going through the fibularis longus and it supplies the fibularis brevis which is the muscle underneath. And we can see the rest of the common superficial fibular nerve then continues down between the longus and the brevis and at this point where I have picked up this nerve it becomes subcutaneous by piercing the deep fascia of the leg the cruel fascia. And from here downwards it supplies the antrolateral aspect of the leg the lower one third and then it continues and it supplies the most of the skin of the dorsum of the foot except one small portion which is supplied by the deep fibular nerve. So this is the full course of the superficial fibular nerve and this is the superficial fibular division of the common fibular nerve. Now let's trace this muscle here this as I mentioned is the fibularis longus it takes origin from the upper part of the fibula and the tendon then goes behind the lateral malleolus and here it was covered by the fibularis retinaculum the superior and the inferior fibularis retinaculum part of which has been retained here and we can see and here it is attached by means of some fine fascial structures to prevent it from dislodgement and it goes behind and then we can see it is running here and in this point it goes deep to the sole of the foot where my finger has disappeared and it runs in the layer four of the sole of the foot goes all the way across from the lateral to the medial side and gets attached to the medial cuneiform and the first metatarsal bone. So this is the fibularis longus tendon and the most important action of this is it's the most powerful inverter of the foot at the same time because of its long course in the sole of the foot it also helps to maintain the transverse arch of the foot just under that this tendon that we see here this is the fibularis brevis goes behind the lateral malleolus and it's also attached by means of fascia to prevent it from dislodgement but this one as it comes to the foot it goes and gets attached to the tuberosity of the fifth metatarsal. This is also an inverter of the foot and here we have an important clinical correlation pertaining to the fibularis brevis if in a state of contraction of the fibularis brevis when the foot is averted if there is forcible inversion of the foot like for example when a person is dancing on high heels then it can lead to aversion fracture of the tuberosity of the fifth metatarsal and that is known as a dancer's fracture which pertains to this. And finally as I mentioned the course of the superficial fibular nerve which runs like this and supplies the whole of the dorsal of the foot. People who suffer from repeated inversion injuries of the foot they can develop what is known as attraction neuropathy of the superficial fibular nerve. So this is the course and the distribution of the superficial fibular nerve and the lateral compartment muscles. Now let's take a look at the anterior compartment muscles. So these are the anterior compartment muscles. This is between the anterior introspeptum which is attached to the anterior margin of the fibula and the anterior margin of the tibia. This is the crural fascia which was covered by the crural fascia. So the muscles that we see immediately in front of us because this is the prone cadaver and this is the left leg we are going from lateral to medial. The first muscle that we can see on the lateral most part of the anterior compartment is this one here and this is the fibularis tertius and we can recognize it by its the tendon which is a frayed appearance of the tendon. It's got multiple filaments. This is the fibularis tertius and this fibularis tertius also gets attached to the base of the fifth metatarsal. Though this is the muscle of the anterior compartment it is actually an ewarder of the foot. The next muscle that we see is just medial to that and this is the extensor digitorum longus going to the lateral four digits. After that we have the next muscle. This is the one which I picked up here. This is the extensor halosus longus and finally we have this powerful muscle. This is the tibialis anterior. Now that we have mentioned the muscles of the anterior compartment I shall mention the neurovascular structures. So I have separated the extensor halosus longus and we can see this nerve and this artery here. This is the deep fibular nerve and if you look closely here you'll notice that when I exert traction here this is moving. So this is the deep branch of the common fibular. This goes from the lateral to the anterior compartment by piercing through the fibularis muscles and also by piercing through the anterior intermuscular septum and it comes into the anterior compartment. This deep fibular nerve is the one which supplies all the muscles of the anterior compartment and the most important muscle of the anterior compartment which is responsible for dorsiflexion is the tibialis anterior which is the most powerful muscle that we see here and the tendon of which I showed you here. This deep fibular nerve after it has supplied all the muscles it runs under the extensor red nebula and this is a part of the extensor red nebula that we can see here under which all the tendons are running which have been cut here and then it continues and supplies the muscles of the dorsum of the foot which I shall show you in another category and then it goes and supplies the first interdigital cleft skin between the gray two and the second two. This is the course of the deep fibular nerve. Here again there's an important clinical correlation when this nerve is running under the extensor red nebula it can get entrapped there in what is known as the ski boot syndrome. Accompanying this deep fibular nerve is this artery here and this is the anterior tibial artery. The anterior tibial artery is the smaller division of the popliteal artery which we can see in the popliteal fossa and this division occurs high up deep under the soleus muscle and the posterior tibial runs in the posterior compartment and the smaller terminal division anterior tibial runs in the anterior compartment. This anterior tibial artery also runs between the along with the nerve runs between the tibialis anterior and the extensor halosus longus and this gives an anterior tibial recurrent artery to the knee and it also gives dow comes down and it supplies the medial and lateral malleolide and then it goes under the extensor red nebula and becomes the dorsalis pdrv. Because this is a prone cadaver this is the maximum that we can see of the anterior compartment. Thank you very much for watching till now. Stay tuned for the next video in the next compartment.


Ac yn dwy'n meddwl i'r ddiwedd yn y cyfnod o'i dod o'r hyffordd yn ystafell? A'i ddim yn ddod i'n meddwl i'n meddwl i'r ddefnyddio? A mi'n gwybod ychydig yw ddysgu i fynd i'r ffynol fel y ffordd, wedi bod yn bodai'n gweithio'n ddweud i ffyrdd yma? Mae Mason is a player with kind of a track for the last month or so, probably the right since the start of the season. Dabi being great with this kept it informed all along. Steve McClaren and Chris Evans about if there was a possibility he was going to go elsewhere as part of another deal that fell through and came straight onto us and said the deal was back on. Mason is at the games now and they had a good chat with him before the game and he will be in training on Thursday.