1"use strict";(globalThis.webpackChunkuppy_io=globalThis.webpackChunkuppy_io||[]).push([[2178],{16008:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>r,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>h});var o=n(86649),s=n(74848),a=n(28453);const i={title:"Day 30",date:new Date("2019-04-24T00:00:00.000Z"),authors:["kvz"],image:"https://uppy.io/img/blog/30daystoliftoff/day30.jpg",series:"30 Days to Liftoff",seriesSuffix:"of 30",slug:"2019/04/liftoff-30"},r=void 0,l={authorsImageUrls:[void 0]},h=[];function d(e){const t={a:"a",br:"br",center:"center",em:"em",img:"img",li:"li",p:"p",ul:"ul",...(0,a.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.p,{children:"And then there were none! Zero days left in our thirty-day blog post challenge.\nI can't believe this is already the final day of our push to get Uppy to 1.0.\nThere's still a bunch of things that we'd like to finish before shipping, so\nlet's dive right in."}),"\n",(0,s.jsxs)(t.center,{children:[(0,s.jsx)(t.br,{}),(0,s.jsx)(t.img,{alt:"",width:"400",src:"/img/blog/30daystoliftoff/day30.jpg"}),(0,s.jsx)(t.br,{}),(0,s.jsx)(t.br,{})]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.a,{href:"https://github.com/tim-kos",children:"Tim"})," added additional information to the\nmigration guide, so Transloadit customers looking to move from the jQuery SDK\nto Uppy Robodog will have an easier time doing so. He also implemented support\nfor a jQuery SDK parameter that didn't work in Robodog.form yet, and smashed\nout the ",(0,s.jsx)(t.a,{href:"https://github.com/transloadit/uppy/pull/1475",children:"German Locale Pack"}),"!"]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.a,{href:"https://github.com/kiloreux",children:"Abdel"}),"\n",(0,s.jsx)(t.a,{href:"https://github.com/transloadit/uppy/pull/1481",children:"translated"})," Uppy to French.\n",(0,s.jsx)(t.img,{alt:"",src:"https://avatars1.githubusercontent.com/u/20061212?s=460&v=4",width:"16",align:"absmiddle"})]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.a,{href:"https://github.com/arturi",children:"Artur"}),"\n",(0,s.jsx)(t.a,{href:"https://github.com/transloadit/uppy/pull/1468",children:"documented"}),' the Thumbnail\nGenerator plugin and made a few more hardcoded English strings translatable\nvia Locale Packs. For instance, we can even translate\n"',(0,s.jsx)(t.a,{href:"https://github.com/transloadit/uppy/commit/6d36309b72b62e215caa172a6300a0f0c7083ce8",children:"Powered By"}),'"\nnow']}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["We also had a team call where we discussed which ",(0,s.jsx)(t.em,{children:"To Do's"})," we can leave behind\nfor the launch, and which ones we'd really like to get in. To save time for\nactually working on these tasks, instead of typing, let me share a screenshot of\nwhat we agreed upon:"]}),"\n",(0,s.jsxs)(t.center,{children:[(0,s.jsx)(t.a,{rel:"noreferrer noopener",target:"_blank",href:"https://uppy.io/img/blog/30daystoliftoff/2019-04-day30-board.png",children:(0,s.jsx)(t.img,{alt:"The Uppy 1.0 project board",src:"/img/blog/30daystoliftoff/2019-04-day30-board.png"})}),(0,s.jsx)(t.br,{}),(0,s.jsx)(t.br,{})]}),"\n",(0,s.jsxs)(t.p,{children:["It's gonna be a close call. ",(0,s.jsx)(t.a,{href:"https://github.com/ifedapoolarewaju",children:"Ife"}),',\nespecially, has a lot on his plate with that\n"',(0,s.jsx)(t.a,{href:"https://github.com/tus/tus-js-client/issues/146",children:"600MB issue"}),'" still\nuntackled, but we did get ',(0,s.jsx)(t.a,{href:"https://github.com/Acconut",children:"Marius"})," on board with the\nway we want to solve it, so now it's full steam ahead."]}),"\n",(0,s.jsx)(t.p,{children:"Before I'm going back to the team and help out where I can, I'd like to thank\nyou for reading along with us for these past thirty days. To be honest, at\ntimes, we regretted making this commitment."}),"\n",(0,s.jsxs)(t.center,{children:[(0,s.jsx)(t.br,{}),(0,s.jsx)(t.img,{alt:"The 30 Days to Liftoff blog posts",src:"/img/blog/30daystoliftoff/2019-04-day30-posts.png"}),(0,s.jsx)(t.br,{}),(0,s.jsx)(t.br,{})]}),"\n",(0,s.jsx)(t.p,{children:"A post a day can steal focus, but we learned a lot. It quickly became clear that\nin order to set ourselves up for success, we needed to plan ahead and establish\nsome basic rules. Strict deadlines, for instance, helped out a lot: the first\niteration needed to be in before lunch, with a second one done shortly after\nlunch. Otherwise, folks would end up working overtime or even on the next day,\nwhen it was already time for the next post."}),"\n",(0,s.jsx)(t.p,{children:"Luckily, we had our content team to take ownership of the whole process and keep\nthese distractions away from the Uppy core team as much as possible. In the end,\nwe really enjoyed
1sharing our development process with the world and giving\ninterested developers a better understanding of what we're trying to accomplish,\nand how."}),"\n",(0,s.jsxs)(t.p,{children:["We hope to see you tomorrow again for our 1.0 launch, which will be accompanied\nby a meaty release post! Make sure to follow us on\n",(0,s.jsx)(t.a,{href:"https://twitter.com/uppy_io",children:"Twitter"})," or via our\n",(0,s.jsx)(t.a,{href:"https://uppy.io/blog/atom.xml",children:"RSS feed"})," if you don't want to miss it!"]})]})}function c(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},28453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>r});var o=n(96540);const s={},a=o.createContext(s);function i(e){const t=o.useContext(a);return o.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),o.createElement(a.Provider,{value:t},e.children)}},86649:e=>{e.exports=JSON.parse('{"permalink":"/blog/2019/04/liftoff-30","editUrl":"https://github.com/transloadit/uppy.io/tree/main/blog/2019-04-liftoff-30.md","source":"@site/blog/2019-04-liftoff-30.md","title":"Day 30","description":"And then there were none! Zero days left in our thirty-day blog post challenge.","date":"2019-04-24T00:00:00.000Z","tags":[],"readingTime":2.98,"hasTruncateMarker":true,"authors":[{"email":"[email protected]","name":"Kevin van Zonneveld","id":"kvz","tagline":"Transloadit co-founder","imageURL":"https://github.com/kvz.png","key":"kvz","page":null}],"frontMatter":{"title":"Day 30","date":"2019-04-24T00:00:00.000Z","authors":["kvz"],"image":"https://uppy.io/img/blog/30daystoliftoff/day30.jpg","series":"30 Days to Liftoff","seriesSuffix":"of 30","slug":"2019/04/liftoff-30"},"unlisted":false,"prevItem":{"title":"Uppy 1.0: Your best friend in file uploading","permalink":"/blog/2019/04/1.0"},"nextItem":{"title":"Day 29","permalink":"/blog/2019/04/liftoff-29"}}')}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.