程序员课余时间如何赚钱_构建我的课外音乐应用程序

程序员课余时间如何赚钱

by Elliott McNary

埃利奥特·麦克纳里(Elliott McNary)

构建我的课外音乐应用程序 (Building my Extra-curricular Music App)

I’ve been quite absent on Free Code Camp since my last post, which outlined my first month going through the program. What went wrong? Absolutely nothing.

自从上一篇文章概述了我参加该计划的第一个月以来,我在Free Code Camp上已经很缺席 。 什么地方出了错? 绝对没有。

I’ve been working on a project for my own personal use. I’m using the skills that I picked up by working through Free Code Camp’s front-end development courses. And I couldn’t be more excited about what I’ve been able to accomplish so far.

我一直在为自己的个人目的而设计一个项目。 我正在使用通过Free Code Camp的前端开发课程获得的技能。 到目前为止,我对自己已经能够完成的工作感到非常兴奋。

I had a problem and I wanted to build something to fix it.

我遇到了问题,我想建立一些解决方案。

I’m constantly listening to music. Almost every waking hour of the day I have something playing in the background.

我一直在听音乐。 在一天的几乎每个醒着的时刻,我都会在后台玩一些游戏。

I primarily use Spotify and Soundcloud, and I rarely download anything. I use Soundcloud to listen to tunes from more unknown artists, and I use Spotify for bigger, label-released tunes.

我主要使用Spotify和Soundcloud,很少下载任何内容。 我使用Soundcloud收听来自更多未知艺术家的音乐,而我使用Spotify进行较大的,发行唱片的音乐。

I sometimes use playlists with Spotify, primarily because their recommendation engine is so good and I can get an incredible mood-based playlist based off that. However with Soundcloud I primarily go through my feed and favorite the songs that I want to listen to more. I don’t add them to a playlist because, well, I just don’t. I like listening to the newest songs I find until I can’t stand them anymore.

我有时将播放列表与Spotify一起使用,主要是因为它们的推荐引擎非常好,并且我可以基于此获得令人难以置信的基于心情的播放列表。 但是,使用Soundcloud时,我主要要遍历Feed,并喜欢我想听更多的歌曲。 我没有将它们添加到播放列表中,因为我只是没有。 我喜欢听找到的最新歌曲,直到我受不了为止。

Traditionally, I’d play through my favorites section in Soundcloud like a playlist. The order wouldn’t be exactly what I wanted, but I could still have a constant stream of good tunes that I liked.

传统上,我会像播放列表一样在Soundcloud中浏览我的收藏夹部分。 这个命令并不是我想要的,但是我仍然可以不断获得喜欢的音乐。

Spotify has a queue function where I can basically create a running, temporary playlist. For example, I’m not going to put Rave After Rave by W&W and Marvin’s Room by Drake in the same playlist, but I may have an itch to hear both back to back when I’m hanging at my computer coding. Spotify let’s me do this, but Soundcloud (which I use more than Spotify) does not.

Spotify具有队列功能,基本上可以创建一个正在运行的临时播放列表。 例如,我不会将W&W的《 Rave After Rave》和Drake的Marvin's Room放在同一播放列表中,但是当我挂在计算机编码上时,我可能会很想听到它们的背靠背。 让我让Spotify做到这一点,但Soundcloud(我使用的比Spotify多)却没有。

After finishing my Ziplines for Free Code Camp, I got to work on my personal project. I was going to build a queue function for Soundcloud!

在完成免费代码训练营的Ziplines之后,我开始从事个人项目。 我要为Soundcloud构建队列功能!

When you’re going through your Ziplines it’s fairly easy to find resources to help on a specific problem you’re having. This is because thousands of people have built the same application, and many had similar problems as you.

当您浏览Ziplines时,很容易找到资源来解决您遇到的特定问题。 这是因为成千上万的人已经构建了相同的应用程序,并且许多人都遇到了与您类似的问题。

When building something on your own, there’s a good chance that someone hasn’t done the exact same thing you’re doing. They may have done something similar, but not the exact same. This is a perfect opportunity to hone your googling skills! It’s important to try and think in code and phrase your question in a way that another programmer may ask it on StackOverflow.

当您自己构建某件东西时,很可能有人没有完全按照您的意愿去做。 他们可能做过类似的事情,但并不完全相同。 这是磨练您的谷歌搜索技能的绝好机会! 尝试思考代码并用其他程序员在StackOverflow上提问的方式表达您的问题,这一点很重要。

To be honest, I had been mapping out the project for a couple weeks while working on my Simon game and Tic Tac Toe application for Free Code Camp. After finishing my last Zipline I started building my Soundcloud queue app.

老实说,我在开发我的Simon游戏和Free Code Camp的Tic Tac Toe应用程序时一直在计划该项目几个星期。 在完成最后一个Zipline之后,我开始构建我的Soundcloud队列应用程序。

I started reading the docs on Soundcloud’s API and reasoned to myself that this wasn’t going to be that hard. To be honest, it wasn’t that hard, but there were a ton of bumps in the road that I had to go through.

我开始阅读上的SoundCloud的API的文档和理由对自己说,这是不会那么难。 老实说,这并不难,但是我必须经历很多障碍。

The API docs that Soundcloud provides are pretty bare and there are quite a few broken methods. Surprisingly, I feel like this was a blessing in disguise. It taught me that not everything is perfect (and my app sure isn’t), but as a developer you need to be able to work through the hiccups.

Soundcloud提供的API文档非常裸露,并且有很多破碎的方法。 出乎意料的是,我觉得这是变相的祝福。 它告诉我并非所有事物都是完美的(我的应用程序肯定不是完美的),但是作为开发人员,您需要能够克服困难

I used StackOverflow extensively, and also had to learn some fundamentals about how JS actually works. I still don’t understand how JS works, but I’ll get there. This is a long road, remember?

我广泛使用了StackOverflow,还必须学习一些有关JS实际工作原理的基础知识。 我仍然不了解JS的工作原理,但我会到达那里。 这是一条漫长的路,还记得吗?

The feeling when I got one song to play after another was unbelievable. It was the core function of my app, and I was able to figure out how to do it. I literally fist pumped in my apartment for a good 5 minutes, then immediately texted my Mom and tried to explain to her what I’d accomplished (to no avail).

当我让一首歌开始播放时的感觉令人难以置信。 这是我应用程序的核心功能,我能够弄清楚该怎么做。 我实际上用拳头抽了5分钟在公寓里,然后立即给妈妈发短信,并试图向她解释我的成就(无济于事)。

Then I walked to my favorite curry place for a celebratory meal and a Victoria Bitter.

然后,我去了我最喜欢的咖喱餐厅,享用庆祝餐和维多利亚·波特苦酒。

However, my journey was not even close to done. As many say with regards to programming:

但是,我的旅程甚至还没有完成。 正如许多人所说的那样:

“Fix one thing, break 48 more things!”
“解决一件事,再打破48件事!”

That’s exactly what happened, but I knew I could get through it. Plus, I still needed to add functionality like being able to delete a song from the queue, and change the order of songs that were already in the queue.

确实是这样,但是我知道我可以解决它。 另外,我仍然需要添加一些功能,例如能够从队列中删除歌曲,以及更改队列中已有歌曲的顺序。

The bright side was that I was actually able to use the app and queue songs on Soundcloud while I was coding it. In fact, I’m using it as I write this.

好的一面是,在编写代码时,我实际上可以使用该应用程序并将歌曲排在Soundcloud上。 实际上,我在撰写本文时正在使用它。

I’m still working on getting my app to work on mobile. iOS and Android don’t allow things to auto-play in Safari or Chrome. This makes things difficult, but I know that there is a way.

我仍在努力让我的应用在移动设备上运行。 iOS和Android不允许事物在Safari或Chrome中自动播放。 这使事情变得困难,但是我知道有办法。

Soundcloud’s mobile site takes a click input from the user and then is able to play sounds continuously after that. I still haven’t figured out how they do it, but i’m working on it!

Soundcloud的移动站点接受用户的点击输入,然后能够连续播放声音。 我仍然没有弄清楚他们是如何做到的,但是我正在努力!

Another way would be to make a native app. I’m not going to learn Swift or Java yet. But I may try to learn how Cordova works to port this so I can use it on my phone.

另一种方法是制作本机应用程序。 我还不会学习Swift或Java。 但是我可能会尝试了解Cordova如何移植此端口,以便可以在手机上使用它。

While making this project it reminded me a lot of creating music. Whenever I’d make a song and post it, it was never complete. I would always notice a little too much reverb somewhere, or want some white noise here, or a cymbal there. It was never “finished” and I don’t think this project will ever be “finished” in my eyes either. I’ll always have little ideas that I want to implement so it will be ever-changing!

制作此项目时,它使我想起了很多创作音乐的方法。 每当我创作并发布歌曲时,它就永远不会完成。 我总会在某处注意到太多的混响,或者在这里想要一些白噪声,或者在这里想要一个ym。 它从来没有“完成”,我也认为这个项目也不会“完成”。 我总是会想实施的想法很少,因此它将不断变化!

I feel like I can finally say that I’m a programmer. A very beginner programmer, but still a programmer.

我觉得我终于可以说我是一名程序员。 一个非常初级的程序员,但仍然是一个程序员。

I made something that solved a problem for me and I use it every day.

我做了一些可以为我解决问题的事情,并且每天都在使用它。

As you make your way through the Free Code Camp curriculum, be sure to keep thinking of personal things that you’ll want to build with your newfound skills.

在完成“免费代码训练营”课程时,请务必考虑使用新技能构建的个人事物。

As you learn new methods and build your Ziplines, think about how you can take what you’re learning and put it to use to make your life better.

当您学习新方法并构建Ziplines时,请考虑如何利用所学知识,并将其用于改善生活。

Don’t worry about making the next big thing. Just keep learning and building things that you think are cool.

不用担心下一件大事。 只是继续学习和构建您认为很棒的东西。

I’m hesitant on putting the link to my app here because SoundCloud has a 15,000/song per day API limit, but I’ll do it anyway because I think it’s cool. And maybe others will as well.

我不愿在此处放置指向我的应用程序的链接,因为SoundCloud每天的API限制为15,000 /首歌曲,但无论如何我还是会这样做,因为我认为它很酷。 也许其他人也会。

If we can make it hit the API limit, maybe Soundcloud will take note and implement this feature themselves. In the end that’s all I really want.

如果我们可以使其达到API限制,也许Soundcloud会注意并自行实现此功能。 最后,这就是我真正想要的。

You can check out my app here. I’m still working on my design skills, and the app is under heavy development, but it should be stable. Here’s hoping you find it useful.

您可以在此处查看我的应用 。 我仍在研究设计技能,并且该应用程序正在大量开发中,但是应该稳定。 希望您觉得它有用。

I’ll be moving to Bali for two months and going through Free Code Camp’s back end program. I already have some cool ideas for this app where I’ll be able to utilize my new Node.js skills.

我要去巴厘岛呆两个月,并经历Free Code Camp的后端计划。 我已经对该应用程序有一些不错的主意,在这里我将能够利用我的新Node.js技能。

If anyone is looking for a hungry junior developer who is ecstatic about learning new technologies, please reach out to me on Twitter (and follow me, too). I’ll be back in the USA in May.

如果有人正在寻找渴望学习新技术的渴望的初级开发人员,请在Twitter上与我联系(也请关注我)。 我将于五月回到美国。

Until then, keep brainstorm those extracurricular projects. The day will soon come when you’re ready to start building them.

在此之前,请继续集思广益那些课外项目。 当您准备开始构建它们的那一天将很快到来。

翻译自: https://www.freecodecamp.org/news/building-an-app-outside-of-your-curriculum-7b76aa881d52/

程序员课余时间如何赚钱

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值