src-d / blog Goto Github PK
View Code? Open in Web Editor NEWsource{d} blog
Home Page: https://blog.sourced.tech/
License: GNU General Public License v3.0
source{d} blog
Home Page: https://blog.sourced.tech/
License: GNU General Public License v3.0
On the blog page join slack button disabled Wanted to report bug also https://blog.sourced.tech/ on this page the place to enter the email id to join slack channel does not work that button does not work. OSX and chrome browser. When I press command key inside that text-box then only the button is enabled and clickable
Describe the bug
make serve
swallows the error in case an author of blog post is not in the authors.yml
and the blog post is silently not served.
Only running make hugo-server
reveals the error:
ERROR 2018/07/25 13:07:10 Error while rendering "page": template: theme/_default/single.html:1:3: executing "theme/_default/single.html" at <partial "skeleton" (...>: error calling partial: template: theme/partials/skeleton.html:7:7: executing "theme/partials/skeleton.html" at <partial (printf "ske...>: error calling partial: template: theme/partials/skeleton-single.html:15:15: executing "theme/partials/skeleton-single.html" at <partial "author" $ct...>: error calling partial: template: theme/partials/author.html:24:36: executing "theme/partials/author.html" at <markdownify>: wrong number of args for markdownify: want 1 got 0
To Reproduce
Steps to reproduce the behavior:
make serve
Expected behavior
make serve
@marnovo let me know what you think about having one URL that redirects to all blog posts from each person/writer in the team.
It would be great for each personally so they can easily add it wherever they want (personal websites, twitter, CFPs sent, etc.) and for us to share with external people interested in a specific area as well.
If we want to do it even further, we could also have another URL per team as well :)
Let me know!
From: https://twitter.com/maxibanki/status/995685281591386112
Hey @sourcedtech,
on this blog post:
https://t.co/g5C5Js3g1k
you are hyperlinking to a dead link to your Public Git Archive repository :)
(Sorry for the poor issue, doing this from mobile)
Considering @erizocosmico @marnovo and @bzz comments #148 (comment) it may be considered the blog relicensing, currently:
Copyright (c) 2015 Máximo Cuadros
When filling the form with an email address and clicking the button the button is disabled but no success or failure message is displayed, and the invitation doesn't go through. Happens to both top and bottom forms.
On the blog page join slack button disabled Wanted to report bug also https://blog.sourced.tech/ on this page the place to enter the email id to join slack channel does not work that button does not work. OSX and chrome browser. When I press command key inside that text-box then only the button is enabled and clickable
Once you're done reading a blog post, you might want to share it with your friends.
I recommend share buttons for twitter, facebook, and maybe Google+.
Data collection is less sexy than Machine Learning, but that is something that source{d} invested a lot into and so has been highlighted only in some talks, so it's time for a blog post!
A story of Write part of source{d} DR pipeline.
ToC
Motivation (why)
Started as a company with a single data-driven product and ad-hoc data collection
As pivoted to ML on Code, require more generic tools for ML experiments and applications
Architecture (what)
RDBMS for URL storage, distributed crawlers \w RabbitMQ, git native protocol and format, storing forks together
Go language: go-git, ORM
Implementation (how)
Rovers, Borges, Siva
This can also be a good segway to the blog post about PGA, as something that relies on this work.
It will intentionally not include much on Write part of the pipeline, leaving Engine/Gitbase story for a future posts/
Currently links to the blog post appear as simple links when posted to social media.
We should implement at least twitter and facebook cards.
A good article on the topic: https://www.koozai.com/blog/social-media/social-markup/
As it was pointed out by @rporres by #146 (comment) the landing/Makefile
should import and follow src-d/ci/Makedile.main conventions.
copied at src-d/landing#216
This section will be filled by @campoy.
As @alcortesm and @vmarkovtsev spotted, the code highlighting is broken for (at least Go and Shell) so people are forced to use nohighlight
. We should try to fix it for most used languages in blog.
Base on our guide the MIT license is not one option so should be changed:
https://github.com/src-d/guide/blob/master/engineering/licensing.md
I have been in need of this feature for a long time: many people ask for my posts and I cannot give a single link. Instead, I have to go through the whole blog again and again and record the links. Would be super useful to query all the posts by a specific author.
The https://blog.sourced.tech/post/tab_vs_spaces article uses content hosted at http://content.blog.sourced.tech/tabs_spaces/index.html from https://github.com/src-d/tab-vs-spaces repository
It should be considered to migrate to a codepen
shortcode
Once the code has been merged, how do I deploy the new version to production?
Add documentation in the README.md
on how to:
I want to have the ability to demonstrate a PDF file from the blog post page.
feature description: https://github.com/src-d/feature-idea/issues/48
There are a lot of posts having HTML code inside, what is not allowed
Since we're trying to have a maintainable blog and being able to redesign it easily we decided to forbid HTML code inside the blog posts after the redesigned. Instead of HTML code, it must be used the available shortcodes
for the blog, that can be found in the README.md
we could:
Issue Title: [PROPOSAL] Blog post title
The momentum around design at source{d}.
What does the Brand Persona means, and what's to come.
Design as a team sport.
Designing with a rationale based on research and Open Source Design Assets.
Making reasoned design decisions.
Where are we, and where do we want to go.
This section will be filled by @campoy.
Idea comes from #233 (comment)
Very rough grounds that would be covered
OSS:
Proprietary/from talks or papers (material)
details section below
)with some basic examples of using each API, and conclusion why bblfsh is the best tool for us.
This section will be filled by @campoy.
NOTE Please write in short lines so the review is easier to do.
Preliminary content comes from prev. blog pos
{{% center %}} … {{% /center %}}
## Technical details
Based on the internal success-story of C++ with [ClangMR tool](https://research.google.com/pubs/pub41342.html)
for matching/traversing/transforming Abstract Syntax Tree (AST) at scale, a similar tooling was built for Java.
{{% youtube ZpvvmvITOrk %}}
Project [Error-Prone](https://github.com/google/error-prone) is a compiler extension that is able to perform
arbitrary analysis on the *fully typed AST*. One thing to notice is that one can not get such input by using
only a parser even as advanced as [babelfish](https://doc.bblf.sh/). Running a full build would be
required in order to do things like symbol resolution. In the end, after running a number of checker plugins
Error-Prone outputs simple text replacements with suggested code fixes.
The project is open source and is well documented in a [number](https://research.google.com/pubs/pub38275.html)
of [papers](https://research.google.com/pubs/pub41876.html). Another closed source tool was built to scale
application of those fixes to the whole codebase, called JavacFlume — which I would guess looks something like
an Apache Spark job that applies patches in some generic format.
Here is an example of how a full pipeline looks for C++:
{{% grid %}}
{{% caption src="https://cdn-images-1.medium.com/max/4224/1*KpJ5fj4njR1HTDfzhLCQkg.png" title="ClangMR processing pipeline ilustration"%}}
“Large-Scale Automated Refactoring Using ClangMR” by
[Hyrum Wright](https://research.google.com/pubs/HyrumWright.html), Daniel Jasper, Manuel Klimek, [Chandler Carruth](https://research.google.com/pubs/ChandlerCarruth.html), Zhanyong Wan
{{% /caption %}}
{{% /grid %}}
Although it is not disclosed, an attentive reader might have noticed that **Compilation Index** part of the
pipeline is very similar to a [Compilation Database](https://kythe.io/docs/kythe-compilation-database.html)
in the open source Kythe project.
It might be interesting to take a closer look at the example of an API for AST query and transformation for C++.
### C++ Example
> *rename all calls to Foo::Bar with 1 argument to Foo::Baz, independent of the name of the instance variable,
> or whether it is called directly or by pointer or reference*
{{% grid %}}
{{% grid-cell %}}
![API example: invoke a callback function on call to Foo:Bar](https://cdn-images-1.medium.com/max/2000/1*vOYemTlJ2QZyzXvizSy5Og.png)
{{% /grid-cell %}}
{{% grid-cell %}}
This fragment will invoke a callback function on any occurrence of the call to *Foo:Bar* with single argument.
{{% /grid-cell %}}
{{% /grid %}}
{{% grid %}}
{{% grid-cell %}}
![API example: replace matching text of the function name with the "Baz"](https://cdn-images-1.medium.com/max/2116/1*JiUgO-gimsIi2JpRB9LYeg.png)
{{% /grid-cell %}}
{{% grid-cell %}}
This callback will generate a code transformation: for the matched nodes it will replace the matching text of
the function name with the “Baz”.
Regarding code transformations in Java, **Error-Prone** has a similar low-level [patching API](http://errorprone.info/docs/patching)
that is very close to native AST manipulation API. It was found to have a steep learning curve similar to the
Clang, and thus pose a high entry barrier — even an experienced engineer would need few weeks before one can be
productive creating fix suggestions or refactorings.
{{% /grid-cell %}}
{{% /grid %}}
That is why a higher level API was built for Java: first as the separate [Refaster](https://research.google.com/pubs/pub41876.html)
project and then [integrated into Error-Prone](http://errorprone.info/docs/refaster) later.
So a usual workflow would look like — after running all the checks and emitting a collection of suggested
fixes, shard diffs to smaller patches, run all the tests over the changes and if they have passed, submit
patches for code review.
{{% center %}} … {{% /center %}}
{{% center %}}
##### Thank you for reading, stay tuned and keep you codebase healthy!
{{% /center %}}
Story follows along the lines:
Reported via tweeter https://twitter.com/hoelzro/status/937732969623642112
@srcd_ Your blog is really interesting! Just a heads-up, though - on Firefox 57, right clicking or middle clicking on links automatically follows the link like a left click, which is a little frustrating when I'm trying to open lots of posts to read =)
Initial effort is here
related twitter threads:
Same as src-d/landing#72
Our licence with quay gives us 50 private repositories, and we already have 46 in use. If the repo at github is public, I'd say the images at quay could be too.
There is no Access-Control-Allow-Origin
header in the staging server response. If this is a bug and not a feature then it would be cool to add the *
policy.
How about blog.sourced.tech btw?
Every public repo should be hosted in https://hub.docker.com/ instead of quay.
Once a new repo in dockerhub is created and images have been copied there, assign this issue to Infra team know so they can configure drone
to work with the new registry instead.
The blog post I am currently working on requires showing a PDF file. I talked to @dpordomingo and he confirmed there is no existing shortcut and suggested https://pdfobject.com/ as an implementation. So this is a feature request.
cc @marnovo
There are bullets after indices in https://blog.sourced.tech/post/minhashcuda/
user story: "As a blog developer and publisher I'd like to know how to develop and rise the blog"
When it was added webpack to the project, it was added generated code that can be updated only with yarn install && node_modules/.bin/webpack
but it is not documented at all
Idea came up as a suggestion from @eiso and @campoy
Changes/suggestions/contributions are welcome and co-authorship is encourage!
Explain how we ran apollo on PGA, detail the numerous problems that were encountered and solutions we found.
Describe the datasets we'll release with the blogpost. 3 parts, all released as asdf models: the bags of features (~60GB), the connected components obtained after hashing (~600M), the detected communities (~480MB per community detection algorithms, 10 algorithms).
Also there were some problems during hashing I did in my last weeks of work that I just saw (only a third of the documents were processed hadnt seen the hashing was also unstable -_-" ) so I am rerunning hashing. I figured it would be interesting to put a similarity threshold of .95 like we planned but also one of .80. In the DejaVu paper they used SourcererCC whith the default 80% threshold on token-similarity to consider two files to be similar, so I think it makes sense. This means there will be twice as many connected components and detected communities models.
Analyze results using the Dejavu paper metrics and any other that seems sensible without going too much in detail (too many components to do so -> 110,766 show the cooler plots of communities and analyze them, possibly cross algorithm.
This section will be filled by @campoy.
NOTE Please write in short lines so the review is easier to do.
This section will be filled by @campoy.
NOTE Please write in short lines so the review is easier to do.
Finally, no other ORM we’ve found saves you from using things like sql.NullInt64, which in the end ruled them all out.
One of the most popular ORMs supports pointers for years. It's very strange to see that you couldn't find it:
https://github.com/jinzhu/gorm/blob/master/pointer_test.go
Modern Hercules is able to:
There will be cool pictures with the analysis results. Also some notes on common code snippets which were not idiomatic Go and are fixed now. + some notes on the project structure evolution, how I went from flat to tree and defined the public interface using type aliases.
This section will be filled by @campoy.
NOTE Please write in short lines so the review is easier to do.
I want to have the margin in the inner tags so images can be wider than 600px.
I could use @smola or @mcuadros help with this announcement.
TBD but:
I really good feedback on the blog post, but also some people were concerned about possible downsides of our approach.
Specifically, it's quite easy to write words in a file that even though do not correspond to any license will be identified as one.
For our case this is totally fine, but for other usages, specially when false positives are legally dangerous, this might not be acceptable.
@vmarkovtsev, would you be ok adding one more note right after the table of comparison with other tools?
Thanks!
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
quay.io/srcd/blog ca0bdbd d08f63610311 58 seconds ago 91.7MB
quay.io/srcd/blog 1dbcd56 3c44514b15bb About an hour ago 91.7MB
quay.io/srcd/blog bf101b0 2f2a89c31236 13 days ago 88.2MB
quay.io/srcd/blog bf28206 177fd93dc014 2 weeks ago 88.2MB
quay.io/srcd/blog a5ebbde b49721415cf7 2 weeks ago 88.1MB
quay.io/srcd/blog a444da4 7afd2dcfe3f1 2 weeks ago 88.1MB
quay.io/srcd/blog a06b184 3f7c12900f3a 2 weeks ago 88.1MB
quay.io/srcd/blog 260d4fe e6ac031ffce6 3 weeks ago 87.6MB
quay.io/srcd/blog feb93b0 7474aa61dba9 7 weeks ago 87.6MB
quay.io/srcd/blog 0395b3f 2dc9deec5227 8 weeks ago 87.6MB
quay.io/srcd/blog f2cba34 28bb5a1124e3 8 weeks ago 87.6MB
quay.io/srcd/blog 4a0e924 fd3edfd2943d 2 months ago 77MB
quay.io/srcd/blog c1e4172 1dbfe4941a35 2 months ago 77MB
quay.io/srcd/blog 345cc55 44af61dd0cca 2 months ago 77MB
quay.io/srcd/blog 861504b ad81a4a471ce 2 months ago 77MB
quay.io/srcd/blog c76042c 97195ca1f9e2 3 months ago 76.9MB
quay.io/srcd/blog 6ea8af4 94be62447f9e 3 months ago 76.9MB
quay.io/srcd/blog 58aa087 5855f91c7e0a 3 months ago 76.9MB
quay.io/srcd/blog e3971ce 2dd263a54d72 3 months ago 69.4MB
quay.io/srcd/blog 5409ed2 207372c097bb 3 months ago 69.4MB
quay.io/srcd/blog ca5dbff ace5ce48fc7e 3 months ago 69.4MB
quay.io/srcd/blog 3b398c1 0cd42ed185f9 3 months ago 69.4MB
quay.io/srcd/blog cb7060f 54763b50e005 3 months ago 69.4MB
quay.io/srcd/blog 76f6380 61324a81ac62 3 months ago 69.3MB
quay.io/srcd/blog f1aa027 5824607c51a7 4 months ago 57.1MB
quay.io/srcd/blog 6a1b61a 5470d42add3d 4 months ago 57.1MB
quay.io/srcd/blog 393669e 1bbabdfda705 4 months ago 57.1MB
quay.io/srcd/blog 5d37e32 be3ccff88c0e 4 months ago 57MB
quay.io/srcd/blog 6083793 e4da65582ab6 5 months ago 57MB
quay.io/srcd/blog 824c027 c5bf4c721b83 5 months ago 57MB
quay.io/srcd/blog dd4dea1 2e407ad9fe92 5 months ago 57MB
quay.io/srcd/blog 96addcb 3d0151125577 5 months ago 57MB
quay.io/srcd/blog 8e9778e 16b0ead965ac 5 months ago 57MB
quay.io/srcd/blog 12e5b77 31455c190c63 5 months ago 57MB
quay.io/srcd/blog 2b5c803 ad7ea2e5cc78 5 months ago 57MB
quay.io/srcd/blog 093bd7d 94567ec756b2 5 months ago 57.6MB
quay.io/srcd/blog d7e5487 f3c7197e8e96 5 months ago 54.1MB
quay.io/srcd/blog e14ceab 134739614145 5 months ago 54.1MB
quay.io/srcd/blog ee1d2b1 7af0ac75d91c 5 months ago 54.1MB
quay.io/srcd/blog 6003923 9ed380b77cc7 5 months ago 54.1MB
quay.io/srcd/blog 2aa507d d6a7620cb013 5 months ago 53.4MB
quay.io/srcd/blog 2a75b4b 5f0f5c36865a 5 months ago 53.4MB
quay.io/srcd/blog 612e9f5 3b996ae6cc4f 5 months ago 53.4MB
quay.io/srcd/blog 6f1885d 13bfa2f8370c 5 months ago 53.4MB
quay.io/srcd/blog 90a1aca 756a211bc445 6 months ago 52.7MB
quay.io/srcd/blog f589c0b ab1d813e2f9c 6 months ago 52.7MB
quay.io/srcd/blog 60ef649 f51bf2986d6b 6 months ago 52.3MB
quay.io/srcd/blog 869b0b5 22f333cf48f8 6 months ago 52.3MB
quay.io/srcd/blog 9493723 34cd01270fb8 6 months ago 52.3MB
quay.io/srcd/blog 1fa5ee9 d92d2fc67ab8 6 months ago 51.9MB
quay.io/srcd/blog master 1ce1f1e359a6 6 months ago 51.9MB
rancher/agent v1.0.1 1abfa143defb 14 months ago 415MB
rancher/agent-instance v0.8.1 57f5787fb673 15 months ago 316MB
+ do we clear the garbage in the new deployment scheme? This eats the space.
Sometimes, it's useful to have some visual (and semantic) horizontal content separator inside the article i.e center-aligned ellipsis as Medium implement it with Horizontal Rule
Screenshots
Example from Medium
It would be nice to be able to do that with i.e something like
{{% separator %}}
Using a workaround for now
{{% center %}} … {{% /center %}}
It is what it is: add the date somewhere at the header or the footer of each post record on the main page.
We have the following tracking code in our site themes/hugo-steam-theme/layouts/partials/js.html#L40
<!-- Hotjar Tracking Code for //sourced.tech/ -->
<script>
(function(h,o,t,j,a,r){
h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
h._hjSettings={hjid:184958,hjsv:5};
a=o.getElementsByTagName('head')[0];
r=o.createElement('script');r.async=1;
r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
a.appendChild(r);
})(window,document,'//static.hotjar.com/c/hotjar-','.js?sv=');
</script>
I think we had a conversation about it in slack but it might be archived so I couldn't find it.
Could we drop this tracking script?
Suggested in asdf-format/asdf#573
This section will be filled by @campoy.
NOTE Please write in short lines so the review is easier to do.
I want to describe my experience, what I have learned, funny failures (OSCAL) and big wins (dotAI). Give tips to the beginning speakers since I used to be one a short time ago. Tell the MLonCode story, how it evolved within two years. Disclose the beautiful and ugly sides of the show business haha.
Each new employee should write a "why did join source{d}" as proposed by @bzz on https://github.com/src-d/devrel/issues/5
Requested by @vmarkovtsev on #195 (comment)
TODO
This section will be filled by @campoy.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.